C语言编程 求指导 1.定义两个字符数组s1、s2,并用赋初值的方法把两个字符串”Compute

作者&投稿:班往 (若有异议请与网页底部的电邮联系)
你好,我是个C语言的初学者,有几道题目想问你下,希望你帮我看看,谢谢!麻烦你了~

#include<stdio.h>
#include<math.h>
int prime(int n)
{
int m,i=2,t;
t=(int)sqrt(n);/*A 这个条件仅仅只是节省时间用到;因为一个素数从2开始除,如果除到它本身的开方还没有整除的数出现说明它是素数*/
for(;i<=t;i++)
if(n%i==0)//若此条件成立说明n不是素数,既然判断出他不是素数那么就给他返回一个0;说明函数返回的值是0就证明n不是素数;
{
m=0;
break;/*既然都判断出来n不是素数那么就不用执行for了;*/
}
if(i>t)
/*如果这里成立,说明i已经超过n的开方,就说明n是素数了,(为什么??应该知道吧!/不懂就看解释A)给它返回一个1,就说明说明函数返回的值是1就证明n是素数;*/
m=1;
else continue;
return m;
}
void main()
{
int n;
int i;
printf("请输入你要判断的数!
");
scanf("%d",&n);
if(prime(n))
printf("是素数!
");
else
printf("不是素数!
");
printf("输出200-300之间的素数:
");
for(i=200;i<=300;i++)
{
if(prime(i))/*利用已经写好的函数判断i是否是素数!如果函数返回1证明是素数则输出!否则(即运行到else)continue;*/
printf("%-4d",i);
else continue;
}
printf("
");
}
/*希望你能看的懂,看不懂再找我!

#include
#include
#define P printf
#define MIMA "111"
#define PBT P("%-10s%-12s%-6s%-6s%-13s%-20s

","学号","姓名","性别","年龄"," 手机","住址")
/* 记录标题输出 */
#define PJL P("%-10s%-12s%-6c%-6d%-13s%-20s

",s[i].XueHao,s[i].XingMing,s[i].XingBie,s[i].NianLing,s[i].ShouJi,s[i].ZhuZhi)
/* 记录输出 */
#define N 20

typedef struct
{
char XueHao[12]; /* 学号 */
char XingMing[15]; /* 姓名 */
char XingBie; /*性别*/
int NianLing; /* 年龄 */
char ShouJi[12]; /* 手机 */
char ZhuZhi[30]; /* 住址 */
}NODE;

void ShuRu(NODE s[]);
void Chaxun(NODE s[]);
void Chaxun_QuanBu(NODE s[]);
void Chaxun_BianHao(NODE s[]);
void Chaxun_XueHao(NODE s[]);
void Chaxun_XingMing(NODE s[]);
void Chaxun_NianLing(NODE s[]);
void Chaxun_ShouJi(NODE s[]);
int daoru(NODE s[]);
void Cunchu(NODE s[]);
void Shanchu(NODE s[]);
void Mimashuru(char[],int);

char WenJian[10];
int t=0;
NODE s[N];
void main()
{

char c;
int i;
char MiMa[10];
for(i=1;i<=3;i++)
{
Mimashuru(MiMa,i);
if(strcmp(MiMa,MIMA)!=0)continue;
P("

密码输入正确,请输入文件名 : ");
gets(WenJian);
t=daoru(s)-1;
clrscr();
P("

欢迎进入我的个性化通讯录");
P("

按任意键继续。。 ");
getch();
for(;;)
{
clrscr();
P("




");
P(" ****************************
");
P(" * *
");
P(" * 我的个性化通信录 *
");
P(" * *
");
P(" * 主菜单 *
");
P(" * *
");
P(" * 增加信息----1 *
");
P(" * 删除信息----2 *
");
P(" * 查询信息----3 *
");
P(" * 退出系统----0 *
");
P(" * 储 存----9 *
");
P(" * *
");
P(" ****************************

");
P(" 请选择你想要的操作---- ? ");
c=getch();
if (c=='0') break;
switch(c)
{
case '1':ShuRu(s);break;
case '2':Shanchu(s);break;
case '3':Chaxun(s);break;
case '9':Cunchu(s);break;

}
}
i=4;
}
Cunchu(s);
}


void Mimashuru(char a[],int n) /*****密码输入*****/
{
int j;
clrscr();
switch(n)
{ case 1:P("



密码(以“0”结束)=? ");
break;
case 2:P("



密码错误,请重新输入密码(以“0”结束)=? ");
break;
case 3:P("



密码错误,请最后一次输入密码(以“0”结束)=? ");
}
for(j=0;;j++)
{ a[j]=getch();
if(a[j]=='0') { a[j]='\0';break;}
else putchar('*');
}
}


int daoru(NODE s[]) /**** 导入 ****/
{
int i;
FILE *fp;
if((fp=fopen(WenJian,"rb"))==NULL)return 0;
for(i=0;!feof(fp);i++)
fread(&s[i],sizeof(NODE),1,fp);
fclose(fp);
return i;
}

void Cunchu(NODE s[]) /***** 存盘 *****/
{
int i;
FILE *fp;
if((fp=fopen(WenJian,"wb"))==NULL){P("Save Error!!!");getch();exit(1);}
for(i=0;i<t;i++)
fwrite(&s[i],sizeof(NODE),1,fp);
fclose(fp);
}


void ShuRu(NODE s[]) /*****输入****/
{
float x;
char c;
int i,n;
for(;;)
{
clrscr();
P("





");
P(" **********************
");
P(" * *
");
P(" * *
");
P(" * 输入信息----1 *
");
P(" * 增加信息----2 *
");
P(" * 返 回----0 *
");
P(" * *
");
P(" **********************
");
P("
请选择你想要的操作---- ? ");
c=getch();
if (c=='0') break;
if(c=='1')t=0;
clrscr();
for(i=t;;i++)
{
P("

学号=? ");
scanf("%s",s[i].XueHao);

P(" 姓名=? "); scanf("%s",s[i].XingMing);
getchar();
P(" 性别=? "); scanf("%c",&s[i].XingBie);
P(" 年龄=? "); scanf("%d",&s[i].NianLing);
P(" 手机=? "); scanf("%s",s[i].ShouJi);
P(" 住址=? "); scanf("%s",s[i].ZhuZhi);
t++;
P("输入1继续,输入0返回!");
scanf("%d",&n);
if(n==0) break;
}

}
}


void Chaxun(NODE s[]) /* 查询 */

{
char c;
for(;;)
{
clrscr();
P("





");
P(" ***************************
");
P(" * *
");
P(" * *
");
P(" * 查询菜单 *
");
P(" * *
");
P(" * *
");
P(" * 按编号查询---------1 *
");
P(" * 按学号查询---------2 *
");
P(" * 按姓名查询---------3 *
");
P(" * 按年龄查询---------4 *
");
P(" * 按手机查询---------5 *
");
P(" * 信息全显示---------9 *
");
P(" * 返 回---------0 *
");
P(" * *
");
P(" * *
");
P(" * *************************
");
P("
请选择你想要的操作---- ? ");
c=getch();
if(c=='0')break;
switch(c)
{
case '1':Chaxun_BianHao(s);break;
case '2':Chaxun_XueHao(s);break;
case '3':Chaxun_XingMing(s);break;
case '4':Chaxun_NianLing(s);break;
case '5':Chaxun_ShouJi(s);break;
case '9':Chaxun_QuanBu(s);break;
}
}

}

void Chaxun_BianHao(NODE s[])
{

int i,n1,n2;
clrscr();
P("


请输入起始记录号: ");
scanf("%d",&n1);
P("


请输入结束记录号: ");
scanf("%d",&n2);
clrscr();
PBT;
for(i=0;i<=t;i++)
{
if((i+1)>=n1&&(i+1)<=n2) PJL;
else
P("未能找到符合条件的记录");
}
P("

按任一键继续....");
getch();
}

void Chaxun_XueHao(NODE s[])
{
int i;
char nl1[20];
clrscr();
P("



请输入学号:");
gets(nl1);
clrscr();
PBT;
for(i=0;i<t;i++)
{
if(strcmp(s[i].XueHao,nl1)==0) PJL;
}
P("

按任一键继续...");
getch();
}

void Chaxun_XingMing(NODE s[])
{
int i;
char nl1[20];
clrscr();
P("



请输入姓名:");
gets(nl1);
clrscr();
PBT;
for(i=0;i<t;i++)
{
if(strcmp(s[i].XingMing,nl1)==0) PJL;
}
P("

按任一键继续...");
getch();
}

void Chaxun_NianLing(NODE s[])
{
int i;
int nl1,nl2;
clrscr();
P("



请输入最低年龄:");
scanf("%d",&nl1);
P("
请输入最高年龄:");
scanf("%d",&nl2);
clrscr();
PBT;
for(i=0;i<t;i++)
if(s[i].NianLing>=nl1&&s[i].NianLing<=nl2) PJL;
P("

按任一键继续...");
getch();
}


void Chaxun_ShouJi(NODE s[])
{
int i;
char n1[15];
clrscr();
P("



请输入电话:");
scanf("%s",&n1);
clrscr();
PBT;
for(i=0;i<t;i++)
{
if(strcmp(s[i].ShouJi,n1)==0) PJL;
}
P("

按任一键继续...");
getch();
}


void Chaxun_QuanBu(NODE s[])
{
int i;
clrscr();
PBT;
for(i=0;i<t;i++)
{
PJL;
}
P("

按任一键继续...");
getch();
}

void Shanchu() /***删除***/
{
int i;
char name[10],choice[2];
clrscr();
printf("
");
printf("请正确输入你要删除的姓名:
");
scanf("%s",name);
printf("确定删除?(Y/N)
");
scanf("%s",choice);
if(strcmp(choice,"Y")==0 || strcmp(choice,"y")==0)
{
for(i=0;i<t;i++)
{
if(strcmp(s[i].XingMing,name)==0)
for(i=i;i<t;i++)
{
strcpy(s[i].XingMing,s[i+1].XingMing);
strcpy(s[i].XueHao,s[i+1].XueHao);
strcpy(s[i].ShouJi,s[i+1].ShouJi);
strcpy(s[i].ZhuZhi,s[i+1].ZhuZhi);
s[i].XingBie=s[i+1].XingBie;
s[i].NianLing=s[i+1].NianLing;
}

}
t=t-1;
}
else
{
printf("按任意键返回
");
getch();
return;
}
}

 1.
#include <stdio.h>
#include <string.h>
#include <assert.h>
char* cat(char* des, char* src)
{
 char* p;
 assert(des != NULL);
 assert(src != NULL);
 p = des + strlen(des);
 while (*p++ = *src++);
 return des;
}
int main()
{
 char s1[100] = "Computer";
 char s2[100] = "Language";
 cat(s1, s2);
 printf("%s
", s1);
 return 0;
}

2.

#include <stdio.h>
#include <ctype.h>
int main()
{
 char s[] = "C is a general purpose, procedural, imperative computer \
  programming language developed in 1972 by Dennis Ritchie at the \
  Bell Telephone Laboratories for use with the Unix operating system.";
 int up, low, num, space, dot;
 char* p = s;
 up = low = num = space = dot = 0;
 while (*p)
 {
  if (isupper(*p))
   up++;
  else if (islower(*p))
   low++;
  else if (isdigit(*p))
   num++;
  else if (' ' == *p)
   space++;
  else if (',' == *p)
   dot++;
  p++;
 }
 printf("大写字母: %d
", up);
 printf("小写字母: %d
", low);
 printf("数字: %d
", num);
 printf("空格: %d
", space);
 printf("逗号: %d
", dot);
 return 0;


3.
#include <stdio.h>
#include <assert.h>
char* copy(char* des, char* src)
{
 char* p = des;
 assert(des != NULL);
 assert(src != NULL);
 while (*p++ = *src++);
 return des;
}
int main()
{
 char s1[100];
 char s2[] = "abcdefg";
 copy(s1, s2);
 printf("%s
", s1);
 return 0;
}


这几个题楼主就好好自己做吧。它们可是面试常见问题之一哦!
十个公司的面试题中就有九个公司喜欢出这种题目。

第一题

#include<string>
#include<iostream>
using namespace std;
int main()
{
string s1="Computer",s2="Language";
cout<<s1+s2;
}


楼主工程大的吧。。。。。


喀什市15187769647: C语言编程求助
寇衫六味: #include<stdio.h> #include<string.h> int main() { char str1[200],str2[100]; scanf("%s%s",str1,str2); strcat(str1,str2); printf("%s\n",str1); return 0; }

喀什市15187769647: 指针 1.编写一个C语言程序,定义两个字符数组,并初始化数组的值,然后组合这两个数组并存储在第三个数组 -
寇衫六味: 已通过测试,望采纳#include <stdio.h> main() { char str1[5]="qwer"; char str2[5]="asdf"; char str3[11]; char *p; int i=0; for(p=str1;*p;p++) str3[i++]=*p; for(p=str2;*p;p++) str3[i++]=*p; str3[i]='\0'; printf("%s\n",str3); }

喀什市15187769647: 编写一个C语言程序,定义两个字符数组,并初始化数组的值,然后组合这两个数组并存储在第三个数组当中,要求用指向数组的指针实现. 字符数组arr1:HELLO 字符数组arr2:WORLD 合并后的arr3:HELLOWORLD 怎么弄,我刚刚学的指针,不会,求指点啊!!! -
寇衫六味: main( ) { char arr1[]="HELLO",arr2[]="WORLD",arr3[20]; int i,j; for(i=j=0;arr1[i] || arr2[j];){ if(arr1[i]){ arr3[i+j] = arr1[i]; i++; }else{ arr3[i+j] = arr2[j]; j++; } } arr3[i+j]='\0'; printf("%s\n",arr3); }

喀什市15187769647: 一段C语言代码,求指导 -
寇衫六味: 可以这样:将 fwrite("我们的",1,strlen("我们的"),pFile); 改为 fwrite("我们我们的",1,strlen("我们我们的"),pFile); 为后面要写入的内容预留出空位,否则可能实现不了你要求的效果.

喀什市15187769647: 编写C语言程序,定义一个函数int fun (char c1,char c2,char *s),其 -
寇衫六味: int fun (char c1,char c2,char *s) {int cnt;for(cnt=0;*s;++s){if(*s==c1){cnt++;*s=c2;}}return cnt; }

喀什市15187769647: 求大神帮助!!c语言定义字符 -
寇衫六味: 这定义就是错的啊.定义指针.但是没有为他命名啊.你想怎么调用它?可以定义*p等等

喀什市15187769647: C语言编程 急! -
寇衫六味: 按位求与 & 按位求或 | 按位求异或 ^ 定义两个无符号整数 unsigned int a,b; 输入a,b的值 打印结果 printf("%d",a&b,a|b,a^b);//求出结果按十进制输出 %u 十进制 %o八进制 %x或X十六进制输出

喀什市15187769647: 求教c语言.详细详细详细.一点都不懂. -
寇衫六味: main()是函数入口,int x,y;是定义两个变量,scanf(“%d”,&x);是输入一个变量,根据题目意思是X的阶层,y=fact(x);是调用fact这个函数,并传人一个x,即求几的阶层,函数...

喀什市15187769647: 如何用C语言编程求 1 - 2+3 - 4... - 100 -
寇衫六味: #include "stdio.h" void main() { int a,b=100,c=1; for(a=2;a<=b;a++) if(a%2==0) c=c-a; else c=c+a; printf("结果是 %d",c); } 这个算是非常入门的程序了 现在主要就是养成一个良好的习惯 给的准确的数字都变成变量去定义它 以后好用不要直接使用数字

喀什市15187769647: 求C语言编程指导
寇衫六味:int num=0,i=1; void pa(int x) { num=num+(x%9)*i; i=i*10; x=x/9; if(x==0) { printf("%d",num); exit(0); } pa(x); } int main() { int x; scanf("%d",&x); pa( x); return 0; } ////////////////// int i=0,temp; char num[6]; void pa(int x) { temp=x%13; if(temp>=0&&temp<...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网