C程序设计试题及题解

更新时间:2023-10-14 02:36:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1

二、改错题

1. 统计输入字符串中大小写字母的个数

程序Cmody 041.c,其功能是统计输入字符串中大小写字母的个数, 如输入:abcdEFGHIJK 123 输出:4 答案:

#include #include main() {

char str1[128];

/**/ int i;len, sum=0; /**/ /* int i, len, sum=0;*/ gets(str1);

len = strlen(str1); for(i=0; i

/**/ if( str1[i] >= 'a' || str1[i] <= 'z') /**/ /* if( str1[i] >= 'a' && str1[i] <= 'z')*/ sum++; }

printf(\ getch(); }

2. 逆序输出

程序Cmody 042.c,其功能是将从键盘依次输入的M个整数逆序输出. 如,输入:12 4 656 83 25 35 76 29 输出:29 76 35 25 83 656 4 12 答案:

#include #include #define M 8 main()

{ int a[M],i;

printf(\ for(i=0; i

scanf(\ /*&a[i]*/ printf(\

/**/ for(i=M-1; i<=0; i--) /**/ /* for(i=M-1; i>=0; i--)*/ printf(\ \ printf(\ getch(); }

2

3. 计算大于10的最小n个能被3整除的正整数之和.

程序Cmody 012.c中函数fun(int n)的功能是:根据参数n,计算大于10的最小n个能被3整除

的正整数之和.例如: fun(8)=

11111???????0.396 1215182133答案:

#include #include #include #include #define M 50 double fun(int n) { double y = 0.0; int i,j; j=0;

for(i=1;;i++) {

/**/ if((i<10)&&(i%3==0)) /**/ /* if((i>10)&&(i%3==0))*/ {

/**/ y+=1/i; /**/ /* y+=1.0/i;*/ j++; }

if(j==n) break; }

return y; }

void main() { clrscr();

printf(\}

4. 从键盘上输入两个整数,及一个运算符进行运算

程序cmody031.C的功能是:从键盘上输入两个整数,及一个运算符(+、-、*、/或%),进行程序相应的运算后输出运算的结果。

如输入:1+2 将输出:1+2=3 答案:

#include #include void main()

{ int m,n,result,flag=0;

/**/ char ch,/**/ /* char ch;*/ clrscr();

printf(\

3

scanf(\

/**/ switch ch /**/ /* switch (ch)*/ { case '+': result=m+n; break; case '-': result=m-n; break; case '*': result=m*n; break; case '%': result=m%n; break; case '/': result=m/n; break;

default: { printf(\ }

if (!flag) printf(\ getch(); }

5. 输出201~300之间的所有素数,统计总个数

程序cmody032.C的功能是:输出201~300之间的所有素数,统计总个数。 答案:

#include #include void main() { int num; printf(\ num=fun();

printf(\ getch(); }

int fun()

{ int m,i,k,n=0;

for(m=201; m<=300;m+=2) { k=sqrt(m+1); for(i=2;i<=k;i++)

/**/ if(m/i==0) /**/ /* if(m%i==0)*/ break;

/**/ if(i==k) /**/ /* if(i>k)*/ { printf(\ n++;;

if(n==0) printf(\ } }

return n; }

6. 统计输入字符串中大写类英文字母的个数

程序cmody051.c,其功能是统计输入字符串中大写类英文字母的个数。

4

如输入:abcDEFGH123,输出:5 答案:

#include #include main() {

/**/ char str1 /**/; /* char str1[255]*/ int i,len, sum=0;

printf(\ scanf(\ len = strlen(str1); for(i=0; i

if( str1[i] >= 'A' && str1[i] <= 'Z')

/**/ sum--; /**/ /* sum++;*/ }

printf(\ getch(); }

7. 从键盘依次输入M个整数,输出其中所有的偶数

程序cmody052.c,其功能是实现从键盘依次输入M个整数,输出其中所有的偶数。

如输入:23 62 38 45 26 输出:62 38 26 答案:

#include #include

/**/ #include M 5 /**/ /*#define M 5*/ main() {

int a[M],i;

printf(\ for(i=0; i

/**/ if( a[i]/2 ==0) /**/ /* if( a[i]%2 ==0)*/ printf(\ \ printf(\ getch(); }

8. 输出三角形

程序cmody 021.c输出如下所示图形

5

*************************答案:

#include void main() {

/**/ int i;j; /**/ /* int i,j;*/ for (i=1;i<=5;i++) {

for (j=1;j<=10-2*i;j++)

printf(\

/**/ for (j=1;j<=5;j++) /**/ /* for (j=1;j<=2*i-1;j++)*/ printf(\ printf(\ } }

9. 百元买百鸡

程序cmody 022.c的功能是求解百元买百鸡问题:

设一只公鸡2元,一只母鸡1元,一只小鸡0.5元。问一百元买一百只鸡、公鸡、母鸡、小鸡数可分别为多少?有多少种分配方案? 答案:

#include #include

/**/int fun();/**/ /* int fun()*/ { int hen,cock,chicken,n=0;

for(cock=0;cock<=50;cock+=1) for(hen=0;hen<=100;hen=hen+1) { chicken=2*(100-hen-2*cock);

/**/ if(cock+hen+chicken=100) /**/ /* if(cock+hen+chicken==100)*/ { n++;

printf(\ if(n==20) getch(); } } return n; }

void main() { int num; num=fun();

本文来源:https://www.bwwdw.com/article/or1f.html

Top