C语言必考100题
更新时间:2024-04-25 03:39:01 阅读量: 综合文库 文档下载
1. 按下述格式,从键盘输入一个整数加法表达式:操作数1+操作数2,然后计算并输出表达式的计算结果,形式如下:操作数1+操作数2=计算结果。
2. 输入两个整形数并打印,如果用户不慎输入了非法字符,那么程序提示“输入
数据类型错误”。
3. 已知三角形的三边长a,b,c,要求编写程序,从键盘输入a,b,c的值,计算并输出三角形的面积(注意不存在的情况)。
4. 编程从键盘输入圆的半径r,计算并输出圆的周长和面积。
5. 任意从键盘输入一个三位整数,要求正确分离它的个位,十位和百位数,并分
别在屏幕上输出。 6. 写一个函数实现统计一个输入的整形数的位数。
7. 编程计算方程ax*x+bx+c=0的根,a,b,c由键盘输入,只是用主函数来实现。 8. 编写三个函数,分别在b*b-4*a*c大于0、小于0、等于0时进行调用,并输出结果,在主函数中读入a、b、c的值。
9. 从键盘输入你和你朋友的年龄,变成判断谁的年龄大,并打印最大者的年龄。 10. 从键盘输入一个年份,判断该年是否是闰年,并输出结果。
11. 判断某人是否属于肥胖体型。根据身高与体重因素,医务工作者经广泛的调查
分析给出了以下按“体指数”对肥胖程度的划分:体指数t=w/h*h(w为体重,单位为kg,h为身高,单位为m)。当t<18时,为低体重;当t介于18和25之间时,为正常体重;当t介于25和27之间时,为超重体重;当t≧27时,为肥胖。编程从键盘输入你的身高h和体重w,根据上式,判断体重类型。 12. 利用switch语句将百分制成绩转化为五分制成绩。
13. 利用switch语句将五分制成绩转换成对应分数范围并输出。
14. 编程设计一个简单的计算器程序,要求根据用户从键盘输入的表达式:操作数
1 运算符op 操作数2 计算表达式的值,指定的运算符为加减乘除。 15. 利用时间函数编写一个猜数程序。 16. 编程实现计算n的阶乘。
17. 利用函数递归实现计算n!。
18. 利用π/4=1-1/3+1/5-1/7??计算π的值直到最后一项的绝对值小于0.0001
为止,要求统计总共累加了多少项。 19. 编程输出正三角格式的九九乘法表。
20. 编程输出下三角格式的九九乘法表。 21. 从键盘任意输入一个正整数,编程判断它是否是素数,若是素数,输出“YES”,否则输出“NO!”。
22. 编写一个程序实现输出1—100之间所有素数。
23. 编写一个程序实现输出任意指定m、n之间的所有素数。
24. 读入一个年份和月份,打印出该月有多少天(考虑闰年),用switch语句编程。 25. 打印所有的水仙花数。所谓水仙花数是指一个三位数,其各位数字的立方和等于该数本身。(例159=1*1*1+3*3*3+5*5*5)
26. 鸡兔同笼,共有98个头,386只脚,编程求鸡兔各多少只。
27. 用1元5角钱人名币兑换5分、2分和1分的硬币(每一种都要有)共一百枚,问共有几种兑换方案?并输出每种方案。
28. 三色球问题。若一个口袋中放有12个球,其中有3个红色的,3个白色的,6个黑色的,从中任取8个球,问共有多少种不同的颜色搭配? 29. 打印100以内整数的平方根表。
30. 编程打印一下图案:
@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @
31. 设计一个函数,计算两个正整数的最小公倍数。 32. 设计一个函数,计算两个正整数的最大公约数。 33. 编程使二维数组a[m][n]按如下输入输出
例:input 1 2 3 output 1 4 4 5 6 2 5
3 6
34.从键盘输入某班学生某门课的成绩(每班人数最多不超过40人,具体人数由键盘输入),试编程打印最高分及其学生序号。
35.从键盘输入五个数,利用冒泡法排序,输出排序后的结果。
36.从键盘输入五个数,利用选择法排序,输出排序后的结果。
37.从键盘任意输入五个学生的姓名,编程找出并输出按字典顺序排在最前面的学生姓名。
38.从键盘任意输入五个学生的姓名,编程找出并输出按字典顺序的五个学生姓名。 39.编程实现从键盘任意输入5个正整数,统计非负数个数,并计算非负数之和。 40.从键盘任意输入5个正整数,用函数编程实现将其中最大数和最小数的位置对换后,再输出调整后的数组。
41.输入5*5的矩阵,编程实现:求两条对角线上行、列下标均为偶数的各元素之积。(提示(i==j)||(i+j==4)&&(i%2==0)&&(j%2==0))
42.编程将下列矩阵中的元素向右移动一列,最后一行移至第一列。
1 9 3 5 10 21
43.输入一行字符,统计其中的英文字符、数字字符、空格及其他字符的个数。
44.从键盘任意输入两个整数,利用指针变量作为函数参数,编程实现两数互换功能,然后将交换后的数据重新输出。
45.用字符指针编程实现字符串复制函数。
46.用字符指针编程实现求字符串长度函数。
47.编写一个程序,可以实现在一个数组中删除指定的元素。如:数组元素为1,2,3,输入3,便删除3,输出1,2;若输入4,则继续输出1,2,3。 48.编程将若干字符串按字母顺序由小到大排序后输出。(二维数组和指针数组均可)。49.编程输入一个班的某课程的学生成绩,计算其平均分,然后输出,班级人数由键盘输入。
50.编程实现从键盘输入一个字符串,将其字符顺序颠倒后重新存放,并输出这个字符串(要求:使用头指针和尾指针来实现)。 51.编程判断输入的一串字符是否为“回文”。所谓回文是指顺读和倒读都一样的字符串,如“ABCCBA”是回文。
52.用指针数组编程实现:从键盘任意输入一个数字表示月份值n,程序输出该月份的英文表示,若n不在1~12之间,则输出“Illegal month”。(\May\)(课本308)
53.从键盘任意输入5个整数,用函数编程实现计算最大值和最小值,并返回它们所在数组中的位置。
54.不使用函数strcat(),编程实现字符串连接函数(使用指针实现)。 55.不使用函数strcat(),编程实现字符串连接函数(使用数组实现)。 56.编程实现将二维数组a[m][n]任意向右平移i各单位,i 57.利用公式Cij=Aij+Bij计算m*n阶矩阵A和m*n阶矩阵B之和,并输出。(提示:用二维数组实现矩阵相加) 58.编写一个函数,利用数组实现对字符串的逆序排放并在主函数中输出。 59. 有如下数列,“1,1,2,3,5,8,13??”,编程实现输出其前20项,每行五个。 60.编程打印如下的杨辉三角 1 1 1 2 1 1 3 1 4 1 5 3 6 1 1 4 1 1 10 10 5 61.编写一个Insert()函数,实现对一个有序数列a[n]的插入。 62.编写一个Delet()函数,实现对一个有序数列某个特定元素的删除,释放其所占有 的空间,并输出处理后的数组,若没有找到,则只输出not find! 63.编程实现:任意输入英文星期几,在查找星期表后输出对应的数字。若为查找到,则输出Not find! 0 1 2 Sunday Monday Tuesday 3 Wednesday 4 Thursday 5 Friday 6 Saturday 64.编写一个计算任意m行n列的二维数组中元素的最大值,并指出其所在的行列的 函数FindMax()。假设利用FindMax()计算3个班 每班4个学生的某门成绩的最高分,并指出其所在的行列。 65.利用动态内存分配实现:编程输入一个班的某门课成绩,计算平均分,然后输出。班级人数由键盘输入。 66. 利用动态内存分配实现:编程输入m个班(每班n个学生)某门课的成绩,计算最高分,并指出具有最高分的学生是第几个班的第几个学生。 67.利用指针,编程实现对于长度为n的字符串输出n次,每次较上次首字符不再输出。 例如:”abcde”,依次输出abcde bcde cde de e 。 68.结构体数组应用:模拟洗牌和发牌过程。一副扑克有52张,分4种花色(Suit),黑桃(Spades),红桃(Hearts),草花(Clubs),方块(Diamonds)。每种花色有分13张牌面(Face):A,2,3,4,5,6,7,8,9,10,Jack,Queen,King。编程完成洗牌和发牌过程。(难度很大) 69编写一个程序实现给出年月日,计算该日是该年的第几天。 70.给出年份和该年第几天,输出这天是该年的几月几日。 71. .编写一个函数,求一个给定数的所有因子。如72=2*2*2*3*3. 72. 编写一个函数,利用循环调用函数 依次返回两个整数m,n的所有公约数。例如100,50 返回值依次为 50,25,10,5,2. 73. 写一个函数,实现计算n!,通过主函数调用,实现计算组合数。 74. 有一行文字,要求删去其中某个字符。此行文字和要删的字符均由键盘输入,要删的字符以字符形式输入(如输入a表示要删去所有的字符a). 75.输入一行字符,统计其中多有少个单词。假设单词之间以空格分开。(提示:判断是否有新单词出现的方法—当前被检字符不是空格,而前一被检字符不是空格,则表示有新单词出现) 76.编写一个函数实现Mystrcmp()用于实现strcmp()的功能,,将两个字符串进行比较,,然后将两个字符串中第一个比相同的字符的ASCII码值之差作为返回值返回。 77. 写一个函数,判断自身不存在相同字符的两个字符串是否可以通过重排字符而得到,例如dare和read、dear都有这种关系。 78. 输入10个整数,将其中最小的数与第一个数交换,最大的数与最后的一个数对换。 写三个函数:1)输入10个数 2)进行处理 3)输出10个数 79. 有n个整数,使前面各数向后平移m个位置,最后m个数变成最前的m个数。例1 2 3 4 5 前移两位3 4 5 1 2,改变数据在计算机内存中的位置,并进行输出。 80. 在主函数中输入10个等长的字符串。用一个函数对它们排序,然后在主函数输出10个已排好序的字符串。 81. 在主函数中输入10个任意长度的字符串。用一个函数对它们排序,然后在主函数输出10个已排好序的字符串。 82.利用一维数组实现替代二维数组来完成对m*n阶数组的转置。要求:改变数据在计算机内存中的位置,然后在主函数中输出。 83. 写一字符串,包含n个字符,写一函数,将此字符串从第m个字符开始的全部字符复制成另一个字符串,并进行输出。 84. .输入一个名词英语单词,按照语法规则将单数转换成复数。规则如下: 1)以辅音字母 y 结尾,则加 es; 2)以 s、x、ch、sh 结尾,则加 es; 3)以元音 o 结尾,则加 es; 4)其它情况加上 s。 85.写一个求三个数平均数的函数,并对其进行调用。 86.通过键盘输入一个字符,判断该字符是数字字符、大写字符、小写字符、空格还是其它字符。 87.编程判断输入整数的正负性 88.编程计算分段函数 x-5 y= 1 x=0 x<0 ex x>0 89.编程判断输入整数的奇偶性。 90.在屏幕上显示一张如下所示的时间表: *****Time***** 1. morning 2. afternoon 3. night Please enter your choice: 操作人员根据提示进行选择,程序根据输入的时间序号显示相应的问候信息。若出现其他,则显示“Selection error!”,用switch语句编程实现。 91.编程实现输出1~100之间的素数。 92. 25个人围成一个圈,从第一个人开始顺序报号,凡报号为3和3 的倍数的人退出圈子,找出最后留在圈子中的人原来的序号。(提示:用链表方式实现) 93.利用指向结构体数组计算学生各科的平均成绩,学生成绩可以在程序源代码中输入,科目数大于等于两科。 94文件操作:创建一个名为student.bin的文件,向其中输入至少三中类型的数据,关闭文件。 95文件操作:打开名为student.bin的文件,读出其中的内容。 96.在必然出错的情况下调用open(),输出错误信息。 97.编程实现输出如下图案: ****** ***** ***** ***** ***** ***** ***** 98.调用时间函数产生两个随机数,输出两个随机数,人比较两个数的大小,输入答案,计算机判断对错。 99.韩信点兵。韩信有一队兵,他想知道有多少人,便让士兵排队报数。按从1至5报数,最后一个士兵报的数为1;按从1至6报数,最后一个士兵报的数为5;按从1至7报数,最后一个士兵报的数是4;按从1至11报数,最后一个士兵报的数为10。求韩信的兵数。 100.计算球的表面积和体积,用goto实现多次运算。 答案: 1.#include int x1,x2; char op; printf(\scanf(\printf(\return 0; } 2.#include #include 4. #include float r,c,area; printf(\float a,b,c,area,t; printf(\请输入a,b,c:\scanf(\t=1.0/2*(a+b+c); if(a+b>c&&a+c>b&&b+c>a) { area=sqrt(t*(t-a)*(t-b)*(t-c)); printf(\int a,b,ret; printf(\ret=scanf(\if(ret!=2) { printf(\输入类型错误\\n\ } else { } printf(\fflush(stdin); } else printf(\不构成三角形\ } 5. scanf(\ c=2*PI*r; area=PI*r*r; printf(\ #include #include 7. #include float a,b,c,dlt; printf(\请输入a,b,c:\ scanf(\dlt=b*b-4*a*c; int a,count=1; printf(\请输入一个数字:\scanf(\while(a>=10) { a=a/10; count++; } printf(\这个数是%d位数\\n\int k,a,b,c; printf(\scanf(\a=k/100; b=(k-a*100)/10; c=k; printf(\return 0; if(dlt>=0) { printf(\} else { printf(\ printf(\ printf(\ } } 8. #include #include void f1(float a,float b,float c) { } void f2(float a,float b,float c) { float x; } x=-b/2*a; float x1,x2,dlt; dlt=b*b-4*a*c; printf(\ void f3(float a,float b,float c) { float x1,x2,dlt; dlt=b*b-4*a*c; printf(\printf(\ printf(\} main() { float a,b,c,dlt; printf(\请输入a,b,c:\ scanf(\dlt=b*b-4*a*c; if(dlt>0) { } f1(a,b,c); } else if(dlt=0) { f2(a,b,c); } else { } f3(a,b,c); 9. #include int yourAge,hisAge; printf(\scanf(\ printf(\ scanf(\ if(yourAge>=hisAge) { printf(\} else { printf(\ } } 10. #include int y; printf(\请输入年份:\ scanf(\ if((y%4==0&&y0!=0)||(y@0==0)) printf(\是闰年\\n\ else printf(\不是闰年\\n\} 11. #include main() { float h,w,t; printf(\请输入你的身高和体重(身高单位为米,体重单位为kg):\scanf(\t=w/(h*h); if(t<18) printf(\低体重\\n\ else if((t<25)&&(t>=18)) { printf(\正常体重\\n\ } else if((t>=25)&&(t<27)) } 12. #include main() { int score,mark; printf(\请输入分数:\ scanf(\mark=score/10; switch(mark) { case 10: case 9:printf(\case 8:printf(\{ printf(\超重体重\\n\ } else printf(\肥胖\\n\ case 7:printf(\ case 6:printf(\ case 5: case 4: case 3: case 2: case 1: } case 0:printf(\default:printf(\} 13. #include scanf(\ switch(score) { case 'A':printf(\case 'B':printf(\ break; case 'C':printf(\ break; case 'D':printf(\ case 'E':printf(\ } 14. #include 15. #include int magic,guess,counter; int a,b; char op; printf(\输入表达式:\scanf(\switch(op) { case'+': printf(\case'-': printf(\ case'*': printf(\case'/': printf(\} default:printf(\} unsigned int seed; srand(time(NULL)); magic=rand()0+1; counter=0; do{ printf(\scanf(\ counter++; if(guess>magic) { } 16. #include int i,p=1,n; printf(\请输入数字:\scanf(\for(i=2;i<=n;i++) { } p*=i; } else { } printf(\printf(\ }while(guess!=magic); printf(\ printf(\ printf(\ 17. #include int n; long result; printf(\请输入数字:\scanf(\ } result=fact(n); if(result==-1) printf(\else printf(\ long fact(long n) { } 18. #include double pi,sum=0,term,sign=1.0; int count=0,n=1; do{ term=sign/n; sum+=term; if(n<0) return -1; else if(n==0||n==1) return 1; else return (n*fact(n-1)); count++; sign=-sign; n+n+2; }while(fabs(term)>=1e-4); pi=sum*4; printf(\ } 19. #include int m,n; for(m=1;m<10;m++) { printf(\ } printf(\ } 20. for(m=1;m<10;m++) { printf(\} printf(\for(m=1;m<10;m++) { } for(n=1;n<=m;n++) { printf(\} printf(\ #include int i,j,k; for(i=1;i<10;i++) { printf(\} printf(\for(j=1;j<10;j++) { printf(\} printf(\ for(i=1;i<10;i++) { } for(k=10-i;k<9;k++) { } printf(\ for(j=i;j<10;j++) { printf(\} printf(\ } 21. #include #include int m; for(m=2;m<=sqrt(n);++m) { if(n%m==0) return 0; int i,n,s,flag=1; printf(\请输入一个数:\scanf(\for(i=2;i s=n%i; if(s==0);flag=0; } if(flag) { } else printf(\不是素数\\n\ printf(\是素数\\n\ } printf(\ } int main() { int n,count=0; for(n=2;n<=100;++n) { isprime(n); } } 23. #include int m; for(m=2;m<=sqrt(n);++m) { } if(n%m==0) return 0; printf(\ int main() int n,m,i,t; printf(\请输入数字范围:\scanf(\if(n n=m; m=t; for(i=m;i<=n;i++) { } isprime(i); 24. #include int year,month; printf(\ } scanf(\switch(month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: printf(\break; case 2: if((year%4==0&&year0!=0)||(year@0==0)) { } else { } printf(\printf(\ break; case 4: case 6: case 9: case 11: printf(\ break; default: printf(\} 25. #include main() { int x,i,j,k; for(x=100;x<1000;x++) { i=x/100; j=(x-100*i)/10; } } k=x; if(x==i*i*i+j*j*j+k*k*k) { printf(\} 26. #include main() { } 27. #include main() { int i,j,k,count=0; for(i=1;i<=28;i++) { for(j=1;j<=73;j++) } { } k=100-i-j; if(5*i+2*j+k==150) { count++; } printf(\ int i,j; for(i=1;i<=98;i++) { } for(j=1;j<=98;j++) { } if(i+j==98&&2*i+4*j==386) { } printf(\ printf(\ } 28. #include 29. #include int m,n,i; for(m=0;m<10;m++) { printf(\} printf(\for(n=0;n<10;n++) { printf(\ for(m=0;m<10;m++) { } printf(\ int i,j,k,count=0; for(i=0;i>=0&&i<=3;i++) { for(j=0;j>=0&&j<=3;j++) { for(k=0;k>=0&&k<=6;k++) { } if(i+j+k==8) { } count++; printf(\ } } printf(\ printf(\ } } 30. #include #include int t; if(x while(y) { t=x%y; x=y; y=t; } return x; } int main() { int i,j,k; for(i=1;i<=4;i++) { } for(j=3;j<=8-i;j++) { printf(\ } for(k=1;k<=(2*i-1);k++) { } printf(\ printf(\ int a,b; scanf(\ printf(\和%d的最小公倍数为%d\\n\ return 0; } 32. #include int t; if(x while(y) { t=x%y; x=y; y=t; } return x; } int main() { int a,b; scanf(\ printf(\ return 0; } 33. #include int a[2][3],b[3][2],i,j; printf(\请输入数字:\\n\for(i=0;i<2;i++) { for(j=0;j<3;j++) { scanf(\ } } zj(*a,*b); for(i=0;i<3;i++) { } for(j=0;j<2;j++) { } printf(\ printf(\ } void zj(int *a,int *b) { } int i,j; for(i=0;i<2;i++) { } for(j=0;j<3;j++) { } *(b+j*2+i)=*(a+i*3+j); 34. #include float score[40],maxscore; int i,n; long maxnum,num[40]; printf(\ scanf(\ printf(\for(i=0;i scanf(\} maxscore=score[0]; maxnum=num[0]; for(i=1;i } { } printf(\ if(score[i]>maxscore) { maxscore=score[i]; maxnum=num[i]; } 35. #include 36. #include int a[5],i,j,p,t; printf(\ int a[5],i,j,t; printf(\ for(i=0;i<5;i++) { } for(i=0;i<5-1;i++) { } for(j=i+1;j<5;j++) { } if(a[i]>a[j]) { t=a[i];a[i]=a[j];a[j]=t; } scanf(\ for(i=0;i<5;i++) printf(\return 0; } for(i=0;i<5;i++) { scanf(\} for(i=0;i<5-1;i++) { } for(i=0;i<5;i++) printf(\return 0; p=i; for(j=i+1;j<5;j++) { if(a[j] { } p=j; if(p!=i) { } t=a[p]; a[p]=a[i]; a[i]=t; 37. #include int n,num; char str[80],min[80]; printf(\gets(str); strcpy(min,str); for(n=1;n<5;n++) { } gets(str); if(strcmp(str,min)<0) { } strcpy(min,str); printf(\ puts(min); } 38. #include 39. #include int i,a[5],count=0,sum=0; for(i=0;i<5;i++) { } scanf(\ char str[80],min[80]; printf(\gets(str); strcpy(min,str); for(n=1;n<5;n++) { gets(str); if(strcmp(str,min)<0) { } strcpy(min,str); } printf(\puts(min); for(i=0;i<5;i++) { if(a[i]>=0) { } count++; sum=sum+a[i]; } printf(\ } 40. #include void maxminexchange(int a[],int n) { } int max=a[0],min=a[0],maxp=0,minp=0; int i,t; for(i=0;i if(a[i]>max) { } { } max=a[i]; maxp=i; if(a[i] min=a[i]; minp=i; } t=a[maxp]; a[maxp]=a[minp]; a[minp]=t; main() { int a[5],i; printf(\ for(i=0;i<5;i++) { scanf(\} maxminexchange(a,i); for(i=0;i<5;i++) { } 41. } printf(\ #include main() { } 42. #include main() { int a[2][3]={1,9,3,5,10,21}; int i,j,t; for(i=0;i<2;i++) { } t=a[i][2]; for(j=1;j>=0;j--) { } a[i][0]=t; a[i][j+1]=a[i][j]; int i,j,a[5][5]; long t=1; for(i=0;i<5;i++) { for(j=1;i<5;j++) { } { } scanf(\ } for(i=0;i<5;i++) { for(j=0;i<5;j++) { if(((i==j)||(i+j==4))&&(i%2==0)&&(j%2==0)) { } t=t*a[i][j]; } } printf(\ for(i=0;i<2;i++) { } } for(j=0;j<3;j++) { printf(\} printf(\ 43. #include #define ARR_SIZE 100 main() { char str[ARR_SIZE]; int len,i,letter=0,digit=0,space=0,other=0; printf(\gets(str); len=strlen(str); for(i=0;i if(str[i]>='a'&&str[i]<='z'||str[i]>='A'&&str[i]<='Z') letter++; else if(str[i]>='0'&&str[i]<='9') digit++; else if(str[i]==' ') space++; else other++; } printf(\英文字符: %d\\n\ printf(\数字字符: %d\\n\ printf(\空格字符: %d\\n\ printf(\其他字符: %d\\n\} 44. #include void change(int *p,int *q) { int temp; temp=*p; *p=*q; *q=temp; } int main() { int a,b; scanf(\ change(&a,&b); printf(\ return 0; } 45. #include void mystrcpy(char *dststr,char *srcstr) { while(*srcstr!='\\0') { *dststr=*srcstr; srcstr++; dststr++; } *dststr='\\0'; } main() { char a[80],b[80]; printf(\ } 46. #include int mystrlen(char *pstr) { int len=0; for(;*pstr!='\\0';pstr++) { len++; } return len; } main() gets(a); mystrcpy(b,a); printf(\puts(b); { char a[80]; int len; printf(\ gets(a); len=mystrlen(a); printf(\} 47. #include int i,j,n; int a[10]; int k=0; //记录删除数据的个数 printf(\请输入10个元素的数组: \\n\ for (i=0;i<10;i++) scanf(\ printf(\请输入需要删除的数:\\n\ scanf(\ for (i=0;i<10;i++) if (a[i]==n) { for (j=0;i+j<9;j++) a[i+j]=a[i+j+1]; k++;//删除数据的个数加1 a[10-k] = 0; //清除最后一个已经前移过的数据 } for (i=0;i<10-k;i++)//输出剩余的数据,后面的数据为0代表已经被删除的无意义数据,不必再输出了。 printf(\} 48. #include int len,i,j; char str[90],t; printf(\ gets(str); len=strlen(str); for(i=0;i for(j=i+1;j if(str[i]>=str[j]) { t=str[i]; str[i]=str[j]; str[j]=t; } } } puts(str); return 0; } 49. #include int *p=NULL,n,i,sum=0; printf(\ scanf(\ p=(int *)malloc(n*sizeof (int)); if(p==NULL) { printf(\ exit(0); } printf(\ for(i=0;i scanf(\ } for(i=0;i sum=sum+*(p+i); } printf(\ free(p); } 50. #include char str[80],*pstr,temp; char *pstart,*pend; int len; gets(str); len=strlen(str); for(pstart=pstr,pend=pstr+len-1;pstart temp=*pstart; *pstart=*pend; *pend=temp; } puts(str); } 51. #include char str[80],*pstart,*pend; int len; gets(str); len=strlen(str); pstart=str; pend=str+len-1; while((*pstart==*pend) && (pstart pstart++; pend--; } if(pstart printf(\ } else { printf(\ } } 52. #include { char *month[12]={\\ puts(month[n-1]); } int main() { int n; scanf(\ if((n<1)||(n>12)) { printf(\ MONTH\\n\ } else { month(n); } return 0; } 53. #include void find(int a[5],int *max,int *p,int *min,int *q) { int i; *max=a[0];*p=1;*min=a[0];*q=1; for(i=0;i<5;i++) { if(*max *max=a[i]; *p=i+1; } if(*min>a[i]) { *min=a[i]; *q=i+1; } } } main() { int a[5],max,min,p,q,i; printf(\请输入数组元素:\ for(i=0;i<5;i++) { scanf(\ } find(a,&max,&p,&min,&q); printf(\最大数:M,位置:M,最小数:M,位置:M\\n\} 54. #include #include void mystrcat(char *srcstr,char *dststr) { while(*srcstr!='\\0') { srcstr++; } while(*dststr!='\\0') { *srcstr=*dststr; srcstr++; dststr++; } *srcstr='\\0'; } main() { char a[m]={\ mystrcat(a,b); puts(a); return 0; } 55. #include #define M 100 void mystrcat(char dststr[M],char srcstr[M]) { int i=0,j; while(dststr[i]!='\\0') { i++; } for(j=0;srcstr[j]!='\\0';j++,i++) { dststr[i]=srcstr[j]; } dststr[i]='\\0'; puts(dststr); } main() { char srcstr[M],dststr[M]; gets(srcstr); gets(dststr); mystrcat(dststr,srcstr); } 56. #include scanf(\ } 57. #include void addmatrix(int a[2][3],int b[2][3],int c[2][3]) { int i,j; for(i=0;i<2;i++) { for(j=0;j<3;j++) { } c[i][j]=a[i][j]+b[i][j]; for(i=0;i0;j--) } { A[i][j]=A[i][j-1]; } A[i][0]=temp; for(i=0;i for(j=0;j printf(\ printf(\ } } main() { int a[2][3],b[2][3],c[2][3],i,j; printf(\for(i=0;i<2;i++) { for(j=0;j<3;j++) { } scanf(\ } 58. } addmatrix(a,b,c); printf(\for(i=0;i<2;i++) { } for(j=0;j<3;j++) { printf(\} printf(\ #include char temp,str2[100]; int i,j,n; n=strlen(str1); for(i=0;i if(j>=i) { temp=str1[i];str1[i]=str1[j];str1[j]=temp; } } strcpy(str2,str1); puts(str2); main() { char str[100]; } 59. #include int a[20]={1,1},i; gets(str); nixu(str); for(i=2;i<20;i++) { a[i]=a[i-1]+a[i-2]; } for(i=0;i<20;i++) { printf(\ \ } return 0; } 60. #include int i,j,a[6][6]; for(i=0;i<6;i++) { a[i][0]=1; } for(i=0;i<6;i++) { for(j=0;j<=i;j++) { if(i==j) { a[i][j]=1; } } } for(i=2;i<6;i++) { for(j=1;j a[i][j]=a[i-1][j-1]+a[i-1][j]; } } for(i=0;i<6;i++) { for(j=0;j<=i;j++) { printf(\ } printf(\ } } 61. #include int b[11],i,j; for(i=0,j=0;i<10;i++) { if(a[i] b[i]=m; b[i+1]=a[i]; b[i]=a[i]; b[i+1]=m; } printf(\输出插入后的数列:\for(i=0;i<11;i++) { } printf(\ putchar(10); } void main() { } 62. #include #define ARR_SIZE 50 int a[10],i,m; printf(\输入十个有序数列:\\n\for(i=0;i<10;i++) { scanf(\} printf(\输入要插入的数据:\scanf(\insert(a,m); void Delete(int *a,int n,int x); void main() { int a[ARR_SIZE],x,i,n; printf(\ } void Delete(int *a,int n,int x) { } int *p,*pos; pos=a+n; for(p=a;p if(*p==x) { } pos=p; for(;p<(a+n-1);p++) *p=*(p+1); break; scanf(\ printf(\ for (i=0;i scanf(\ printf(\scanf(\Delete(a,n,x); if(pos==a+n) printf(\ printf(\ for(p=a;p<(a+n-1);p++) printf(\ 63. #include int i,pos; int findflag=0; char x[10]; char weekday[][10]={\ printf(\ scanf(\ for(i=0;i<7;i++) { if(strcmp(x,weekday[i])==0) { pos=i; findflag=1; } } if(findflag) { printf(\ } else { printf(\ found!\\n\ } } 64. #include #include int findmax(int *p,int m,int n,int *prow,int *pcol) { int i,j,max; max=p[0]; *prow=0; *pcol=0; for(i=0;i for(j=0;j if(p[i*n+j]>max) { max=p[i*n+j]; *prow=i; *pcol=j; } } } return (max); } main() { int score[3][4],i,j,m,n,maxscore,row,col; for(i=0;i<3;i++) { for(j=0;j<4;j++) { scanf(\ } } maxscore=findmax(*score,3,4,&row,&col); printf(\ } 65. #include int *p=NULL,n,i,sum=0; printf(\ scanf(\ p=(int *)malloc(n*sizeof (int)); if(p==NULL) { printf(\ exit(0); } printf(\ for(i=0;i scanf(\ } for(i=0;i sum=sum+*(p+i); } printf(\ free(p); } 66. #include #include int findmax(int *p,int m,int n,int *prow,int *pcol) { int i,j,max; max=p[0]; *prow=0; *pcol=0; for(i=0;i for(j=0;j if(p[i*n+j]>max) { max=p[i*n+j]; *prow=i; *pcol=j; } } } return max; } main() { int *pscore=NULL,i,j,m,n,maxscore,row,col; printf(\请输入数组的行和列:\\n\ scanf(\ pscore=(int *)calloc(m*n,sizeof(int)); if(pscore==NULL) { printf(\ exit(0); } printf(\ for(i=0;i for(j=0;j scanf(\ } } maxscore=findmax(pscore,m,n,&row,&col); printf(\ free(pscore); } 67. #include char a[]=\ char *p=NULL; for(p=a;p printf(\ } return 0; } 68. #include char suit[10]; char face[10]; }; main() { char *Suit[]={\ char *Face[]={\int i,j; struct CARD card[52],temp; for(i=0;i<52;i++) { } strcpy(card[i].suit,Suit[i/13]); strcpy(card[i].face,Face[i]); srand(time(NULL)); for(i=0;i<52;i++) { j=rand()R; temp=card[i]; card[i]=card[j]; card[j]=temp; } for(i=0;i<52;i++) } 69. { } printf(\ #include int dayTab[2][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}}; int Dayofyear(int year,int month,int day) { int i,leap; leap=((year%4==0)&&(year0!=0))||(year@0==0); for(i=1;i day=day+dayTab[leap][i]; } void Menu(void) { printf(\printf(\ printf(\} main() { } 70. #include int int year,month,day,yearDay; Menu(); { } printf(\scanf(\yearDay=Dayofyear(year,month,day); printf(\ dayTab[2][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}}; int MonthDay(int year,int yearDay,int *pMonth,int *pDay) { int i,leap; leap=((year%4==0)&&(year0!=0))||(year@0==0); for(i=1;yearDay>dayTab[leap][i];i++) { } yearDay=yearDay-dayTab[leap][i]; *pMonth=i; *pDay=yearDay; } void Menu(void) { } { } 71. #include int i; for(i=2; i<=(a+1)/2;i++) while(!(a%i)) { } printf(\a/=i; int year,month,day,yearDay; Menu(); { } printf(\scanf(\MonthDay(year,yearDay,&month,&day); printf(\printf(\printf(\ printf(\ main() } void main() { int j; scanf(\ yinzi(j); } 72. #include int gongyue(int m,int n) { } int i,t; if(m>n) { } for(i=2;i<=m;i++) if(m%i==0&&n%i==0) printf(\return 0; t=m; m=n; n=t; main() { } 73. #include double c=1; int i; for(i=1;i<=x;i++) { c=c*i; } return c; } int m,n; scanf(\gongyue(m,n); int main() { int m,n;/*m为较小的数*/ double p; scanf(\ p=jiecheng(n)/(jiecheng(m)*jiecheng(n-m)); printf(\ return 0; } 74. #include void squeeze(char s[],char c) { int i,j; for(i=j=0;s[i]!='\\0';i++) { if(s[i]!=c) { s[j]=s[i]; j++; } } s[j]='\\0'; } int main() { char a[20],x; gets(a); printf(\请输入你要删除的字符:\ scanf(\ squeeze(a,x); puts(a); } 75. #include char str[100]; int i,num; gets(str); if(str[0]!=' ') { } 76. num=1; } else { num=0; } for(i=1;str[i]!='\\0';i++) { if((str[i]!=' ')&&(str[i-1]==' ')) { } num++; } printf(\ #include int mystrcmp(char *p1,char *p2) { for(;*p1==*p2;p1++,p2++) { if(*p1=='\\0') return 0; } return (*p1-*p2); } int main() { char str[20],min[20]; int c; gets(str); gets(min); c=mystrcmp(&str[0],&min[0]); printf(\ return 0; } 77. #include #include void compear(char *p1,char *p2,int n,int m) { int count = 0,i,j; if(m != n) printf(\这两个字符串不能通过字符重排而互相得到 \\n\else { for(i = 0;i < n;i++) for(j = 0;j < n;j++) if(*(p1 + i) == *(p2 + j)) { count++; if(count > i+1) { printf(\这两个字符串不能通过字符重排而互相得到 \\n\ goto l1; } } l1:if(count == n) printf(\这两个字符串能通过字符重排而互相得到\\n\ } { } 79. #include void move(int num[N],int n,int m); int num[N],m; int i; printf(\输入%d个整数\\n\\n\ for(i=0;i scanf(\ char *p1,*p2,a1[100],a2[100],n,m; p1=a1;p2=a2; printf(\请输入第一个字符串: \\n\gets(a1); n = strlen(a1); printf(\请输入第二个字符串: \\n\gets(a2); m = strlen(a2); compear(p1,p2,n,m); } void main()
正在阅读:
C语言必考100题04-25
相似多边形及练习07-25
深度报道的开头10-10
窗外作文1000字06-29
(精校版)2016年新课标文数高考试题文档版(含答案)05-15
帮助老奶奶作文500字07-03
行业研究报111-17
第一次演讲比赛作文500字07-12
古典诗歌中常见的意象分类01-14
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 必考
- 语言
- 100
- 用单片机实现对SST39VF040的操作
- 创新党建活动载体-提高党建工作实效
- 杏河特大桥1号桥总体、桥面系和附属工程施工技术方案
- 山东理工大学《国际经济学》试卷纸 - 图文
- 《亲爱的汉修先生》阅读任务单
- 数控复习材料
- 色度方法验证确认报告
- 论幼儿游戏与幼儿身心健康的发展
- 工会法知识竞赛题
- 航空知识竞赛题库
- 2010 年深圳雅思作文考题 汇总
- 六年级数学期末考试质量分析
- 高三数学理科二轮复习同步练习 2-3-22三角函数、平面向量、立体
- 2018年公需课《工匠精神》考试试卷
- 积极心理学在班主任工作中的运用
- 助磨剂大
- 美国SCCM的重症医学测试题
- 毕业季:原谅我们不敢祝福每个人都成功
- 中控岗位操作规程 doc12
- 小学生综合素质评价方案及评价表