文档库 最新最全的文档下载
当前位置:文档库 › c语言例题

c语言例题

c语言例题
c语言例题

1.在考生文件夹下,要求程序PROG.C的功能是:

将字符串中所有的大写字母转换为小写,其它字符不变(不使用转换函数)。

例如,当字符串为"This Is a c Program"

输出:"this is a c program"

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。运行并调试程序,然后将源程序文件PROG.C提交。

#include

void fun(char str1[])

{

/***********begin***********/

int i = 0;

while (str1 [i]!= '\0')

{

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

i++;

}

/************end************/

}

int main()

{

char str1[80];

printf("Please input a string:\n");

gets(str1);

fun(str1);

printf("Result is: %s\n",str1);

return 0;

}

2. 在考生文件夹下,要求程序PROG.C的功能是:

求[1,1000]之间既不能被7整除也不能被5整除的整数之和,将结果存入变量s中。

部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果存入变量s中。 TheResultis:343139

#include "stdio.h"

#include "math.h"

#include "stdlib.h"

int main()

{

int s;

int i;

/***********begin***********/

s = 0;

for (i = 1;i<=1000; i++)

if (i % 7 != 0 && i % 5 != 0)

s = s + i;

/************end************/

printf("s=%d\n",s);

return 0;

}

3. 在考生文件夹下,要求程序PROG.C的功能是:

求[1,n]之间所有不能被3整除的整数之和,n的值由键盘输入。

例如,如果输入12,则输出结果为:48

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

#include "stdlib.h"

int fun(int n)

{

/***********begin***********/

int i=1,s=0;

for (i; i <= n;i++)

if (i % 3 != 0)

s = s + i;

return s;

/***********end***********/

}

int main( )

{

int n;

printf("Enter n: \n");

scanf("%d",&n);

printf("s=%d\n",fun(n));

return 0;

}

4. 在考生文件夹下,要求程序PROG.C的功能是:

求[1,1000]之间所有不能被3整除的整数之和。请将计算结果保存到变量s中。

部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果存入变量s中。结果: TheResultis:343139(333667)

#include "stdio.h"

#include "math.h"

#include "stdlib.h"

int main( )

{

int i;

int s;

/***********begin***********/

s = 0;

for (i = 1; i <= 1000;i++)

if (i % 3 != 0)

s = s + i;

/************end************/

printf("s=%d\n",s);

return 0;

}

5. 在考生文件夹下,要求程序PROG.C的功能是:

按下面的公式求s的近似值,直到最后一项的项值绝对值小于0.00001,结果保留4位小数。

1 1 1 1

sum = 1 - —— + —— - —— + …… +(-1)^(n-1) ————

3 5 7 2n-1

请将计算结果保存到变量sum中。

部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果保存到变量sum中。 s=0.7854

#include "stdio.h"

#include "math.h"

#include "stdlib.h"

int main( )

{

double sum;

/***********begin***********/

float i,m=1;

sum = 0;

for (i = 1; 1 / i >= 0.00001; i = i + 2, m =-m)

sum = sum + m*(1 / i);

/***********end***********/

printf("sum=%.4f\n",sum);

return 0;

}

6. 在考生文件夹下,给定程序PROG.C的功能是:

求N*N矩阵的主对角线(左上-右下)元素的和并输出。

例如,当矩阵为:

1 6

2 2

3 5

4 5

8 4 5 6

4 5 6 7

则主对角线上的元素之和为:18

部分源程序存在文件PROG.C中。请打开该程序文件,

在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句。

保存、运行并调试程序,最后将源程序文件PROG.C提交。#include

#define N 4

int fun(int arr[N][N])

{

/***********begin***********/

int i,sum = 0;

for (i = 0; i < N; i++)

sum = sum + arr[i][i];

return sum;

/************end************/

}

int main()

{

int a[N][N]={1,6,2,2,3,5,4,5,8,4,5,6,4,5,6,7}; int i,j,sum;

printf("array is:\n");

for(i=0;i

{

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

}

sum=fun(a);

printf("Result is:%d\n",sum);

return 0;

}

7.在考生文件夹下,要求程序PROG.C的功能是:

统计字符串中元音字母’a’、’e’、’i’、’o’、’u’的个数并输出。

例如,当字符串为"This Is a c Program"

输出:Result is: 4

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

8. 在考生文件夹下,要求程序PROG.C的功能是:

统计字符串中英文字母的个数并输出。

例如,当字符串为"This Is a c Program"

输出:Result is:15

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include

#include

fun(char str1[])

{

/***********begin***********/

int n=0,i;

for (i = 0; str1[i]!= '\0'; i++)

if ((str1[i] >= 'a'&&str1[i] <= 'z') || (str1[i] >= 'A'&&str1[i] <= 'Z')) n++;

return n;

/************end************/

}

int main()

{

char str1[80];

int n;

printf("Enter str1:\n");

gets(str1);

n=fun(str1);

printf("Result is: %d\n",n);

return 0;

}

9. 在考生文件夹下,给定程序PROG.C的功能是:

将4*4矩阵的主对角线(左上-右下)及其以下的元素乘以m,输出计算以后的矩阵。

例如,如果m=2,当矩阵为:

1 2 3 4

5 6 7 8

9 10 11 12

13 14 15 16

输出的矩阵应为:

2 2

3 4

10 12 7 8

18 20 22 12

26 28 30 32

部分源程序存在文件PROG.C中。请打开该程序文件,

在fun( )函数中的/*******begin********/ 与 /********end*********/ 之间填入你编写的若干语句。

保存、运行并调试程序,最后将源程序文件PROG.C提交。

#include

#define N 4

void fun(int a[N][N],int m)

{

/***********begin***********/

int i,j;

for (i = 0; i < N;i++)

for (j = 0; j <= i; j++)

a[i][j] *= m;

/************end************/

}

int main()

{

int a[N][N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};

int i,j,sum;

printf("Original array is:\n");

for(i=0;i

{

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

}

fun(a,2);

printf("Result array is:\n");

for(i=0;i

{

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

}

return 0;

}

10. 在考生文件夹下,给定程序PROG.C的功能是:

求N*N矩阵的第2行(以下标为行数)元素的和并输出。

例如,当矩阵为:

1 2 3 4

5 6 7 8

9 10 11 12

13 14 15 16

则第2行元素是:9,10,11,12。第2行元素之和为:42

部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在fun( )函数中的/*******begin********/ 与 /********end*********/ 之间填入你编写的若干语句。

保存、运行并调试程序,最后将源程序文件PROG.C提交。

#include

#define N 4

int fun(int a[N][N])

{

/***********begin***********/

int s=0,i;

for (i = 0; i < N; i++)

s = s + a[2][i];

return s;

/************end************/

}

int main()

{

int a[N][N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};

int i,j,sum;

printf("array is:\n");

for(i=0;i

{

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

}

sum=fun(a);

printf("Result is:%d\n",sum);

return 0;

}

11. 在考生文件夹下,要求程序PROG.C的功能是:

求字符串的长度并输出。

例如,当字符串1为"This Is a c Program"

则应输出:Result is: 19

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include

int fun(char str[])

{

/***********begin***********/

int i,n=0;

for (i = 0; str[i] != '\0'; i++)

n++;

return n;

/************end************/

}

int main()

{

char str1[80]="This Is a c Program";

int count;

printf("String is: %s\n",str1);

count=fun(str1);

printf("Result is: %d\n",count);

return 0;

}

12. 在考生文件夹下,给定程序PROG.C的功能是:

按下面的公式求sum的近似值,直到最后一项的项值小于1e-6为止。

1 1 1 1

sum = 1 - —— + —— - —— + …… +(-1)^(n-1) ——

2 3 4 n

部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在main( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句。

保存、运行并调试程序,最后将源程序文件PROG.C提交。sum=0.693#### #include "stdio.h"

#include "math.h"

#include "stdlib.h"

int main()

{

double sum;

/***********begin***********/

float i, m = 1;

sum = 0;

for (i = 1;(1/i)>1e-6; i++,m=-m)

sum += (1/i)*m;

/************end************/

printf("sum=%.3f\n",sum);

return 0;

}

13在考生文件夹下,要求程序PROG.C的功能是:

统计字符串中的所有大写字母的个数并输出。

例如,当字符串为"This Is a c Program"

输出:Result is:3

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。#include

#include

fun(char str1[])

{

/***********begin***********/

int i, n=0;

for (i = 0; str1[i]!= '\0';i++)

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

return n;

/************end************/

}

int main()

{

char str1[80];

int n;

printf("Enter str1:\n");

gets(str1);

n=fun(str1);

printf("Result is: %d\n",n);

return 0;

}

14在考生文件夹下,要求程序PROG.C的功能是:

求[m,n]之间所有不能被3整除的整数之和,m,n的值由键盘输入。

例如,如果输入3和12,则输出结果为:45

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

int fun(int m,int n)

{

/***********begin***********/

int s=0;

for (m; m <= n; m++)

if (m % 3 != 0)

s += m;

return s;

/***********end***********/

}

int main( )

{

int m,n;

printf("Enter m, n: \n");

scanf("%d,%d",&m,&n);

printf("s=%d\n",fun(m,n));

return 0;

}

15在考生文件夹下,给定程序PROG.C的功能是:

将N*N矩阵的第1列(以下标为列数)乘以n,然后求该列元素的和。

例如,如果n=2,当矩阵为:

1 2 3 4

5 6 7 8

9 10 11 12

13 14 15 16

则第1列元素是:2,6,10,14。乘以n后为:4,12,20,28,和为:64 部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句。

保存、运行并调试程序,最后将源程序文件PROG.C提交。

#include

#define N 4

int fun(int a[N][N],int n)

{

/***********begin***********/

int i, s=0;

for (i = 0; i < N; i++)

{

a[i][1] *= n;

s += a[i][1];

}

return s;

/************end************/

}

int main()

{

int a[N][N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}; int i,j,sum;

printf("Original array is:\n");

for(i=0;i

{

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

}

sum=fun(a,2);

printf("Result array is:\n");

for(i=0;i<4;i++)

{

for(j=0;j<4;j++)

printf("%5d",a[i][j]);

printf("\n");

}

printf("Result is:%d\n",sum);

return 0;

}

16. 在考生文件夹下,要求程序PROG.C的功能是:

统计字符串中的所有小写字母的个数并输出。

例如,当字符串为"This Is a c Program"

输出:Result is:12

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include

#include

int fun(char str1[])

{

/***********begin***********/

int i,n=0;

C语言习题集

1、将一元二次方程的求根公式(-b+判断式的平方根)/(2a)转换为C语言的表达式,转换以后的语句写在函数fun的花括号,fun 函数的其他语句请不要修改,main函数供你调试程序使用也可以任意修改。 #include #include double fun(double a,double b,double c) { double x1=0.0; //--ksstart (注释不能删除)— //考生代码从此开始编写 x1 = (-b+sqrt(b*b-4*a*c))/(2*a); //--ksend--- return x1; } main() { //求一个根 double a=0.0,b=0.0,c=0.0,x1=0.0; int n=0; printf("The a,b,c:"); scanf("%lf %lf %lf",&a,&b,&c); x1=fun(a,b,c); printf("The x1=%lf:\n",x1); } 2、函数 fun 的功能是: 将两个两位数的正整数 a、b 合并形成一个整数放在 c 中。合并的方式是: 将 a 数的十位和个位数依次放在 c 数的个位和百位上, b 数的十位和个位数依次放在 c 数的十位和千位上。 例如, 当 a=45, b=12, 调用该函数后, c=2514 。 注意: 部分源程序存在文件 PROG1.C 中。数据文件 bc.in 中的数据不得修改。请勿改动主函数main 和其它函数中的任何内容,仅在函数 fun 的花括号中填入你编写的若干语句。 #include #include long fun(int a, int b) { long c=0; //--ksstart(注释不能删除)— //考生代码从此开始编写 int c1,c2,c3,c4; c1 = b%10; c2 = a%10; c3 = b/10;

c语言习题.doc

1.C语言中,int型数据在计算机内部是由()表示的。 答:int型数据在计算机内部是由16位补码表示的。 2.下列可以作为C语言用户标识符的是()。 A) _123 B) a1b2c3 C) int D) 123abc 答:A)和B) C语言标识符必须是以英文字母(a到z)、或者下划线_开头的字符串。字符串中只能包含英文字母、下划线和数字(0到9)。但字符串不能是C语言中的32个保留字(例如int,short,long,unsigned,float,char,if,switch,for,while等)。 3.在C语言中,如果下面的变量都是int类型,则输出的结果是()。 sum=pad=5,pAd=sum++,pAd++,++pAd; printf("%d\n",pad); 答:输出结果是5。 因为C语言是字母大小写敏感的,也就是说区分大小写字母。pad和pAd是两个不同的变量。4.以下程序的输出结果是( )。 #include main() { printf("%d\n",NULL); } 答:0 因为stdio.h头文件中NULL的定义如下: #define NULL 0 5.下面程序的输出是()。 main() { int x=10,y=3; printf("%d\n",y=x/y); } 答:3 因为两个同类型的数据作算术运算,其结果仍为该类型。即整数除以整数,商仍为整数。 10/3的商为3。 6.下面程序的输出是()。 main() { int x=023; printf("%d\n",--x); } 答:18 因为023是一个八进制数,表达式--x的值为022,按照%d带符号的十进制数输出,结果为18。 注意:023是八进制数;23是十进制数;0x23是十六进制数。 7.在C语言中,不正确的int类型的常数是()。 A)32768 B)0 C)037 D)0xAF 答:A) 8.执行下面程序中的输出语句后a的值是()。

C语言例题经典

51.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是小写字母,则把它变成大写字母;其它字符不变,请编程。 #include void main() { char ch; ch=getchar(); if ((ch>=65)&&(ch<=90)) ch=ch+32; else if ((ch>=97)&&(ch<=122)) ch=ch-32; printf("%c\n",ch); } 52.已知x和y存在下列对应关系,要求对输入的每个x值,计算出y值,请编程。 y=x*(x+2),2 void main() { float x,y; printf("输入X值:"); scanf("%f",&x); if (x<=-1) { y=x-1; printf ("Y=%6.2f\n",y); } else if (x<=2) { y=2*x; printf ("Y=%6.2f\n",y); } else if (x<=10) { y=x*(x+2); printf ("Y=%6.2f\n",y); } else printf("取值范围出错\n"); } 53.已知x和y存在下列对应关系,要求对输入的每个x值,计算出y值,请编程。 y=0,x=a||x=-a; y=sqrt(a*a-x*x), -aa. #include #include void main() { float x,y,a; printf("输入A值[A>0]:"); scanf("%f",&a); printf("输入X值:"); scanf("%f",&x); if ((x==a)||(x==-a)) y=0; else if ((x-a)) y=sqrt(a*a-x*x); else if ((x<-a)||(x>a)) y=x;

C语言习题及参考答案

C语言习题集 习题一 一.填空题 1.C程序是由(函数)构成的,一个C程序中至少包含(main函数)。因此,( 函数) 是C程序的基本单位。 2.C程序注释是由( /*) 和( */ ) 所界定的文字信息组成的。3.函数体一般包括( 变量声明) 和( 语句) 。 二.判断题 1.一个C程序的执行总是从该程序的main函数开始,在main函数最后结束。【错】 2.main函数必须写在一个C程序的最前面。【错】 3.一个C程序可以包含若干的函数。【对】 4.C程序的注释部分可以出现在程序的任何位置,它对程序的编译和运行不起任何作用。但是可以增加程序的可读性。【对】 5.C程序的注释只能是一行。【错】 6.C程序的注释不能是中文文字信息。【错】 8.可以使用Visual C++ 6.来编译和连接一个C程序。【对】 9.可以使用Visual C++ 6.来运行一个C程序。【对】 10.可以使用Visual C++ 6.来实时调试(即动态调试)一个C程序。【对】三.简答题 1.写出一个C程序的基本结构。 2.简要叙述使用Visual C++ 6.0编译和运行一个程序的步骤。 四.编程题 1.提高题:参照课本例1.1,试编写一个C程序,输出如下信息。(提示:使用键盘上的一些符号)。 2.提高题:试编写一个C程序,输出如下信息。 ********************** *** @ @ *** *** @ *** ********************** 试试看,可以输出其他组合图案吗?

习题二 一.选择题 1、合法的字符常量是(ACD)。 A)…\t?B) “A” C)…a?D)?\x32? 2、合法的字符常量是( D) 。 A)…\084?B) …\84? C)…ab?D)?\x43? 3、(B)是C语言提供的合法的数据类型关键字。 A)Float B)signed C)integer D)Char 4、在以下各组标识符中,合法的标识符是((4))。 (1)A)B01 B)table_1 C)0_t D)k% (2)A)Fast_ B)void C)pbl D) (3)A)xy_ B)longdouble C)*p D)CHAR ( 4 ) A) sj B) Int C)_xy D)w_y23 5、属于合法的C语言长整型常量的是(BD)。 A)5876273 B)0L C)2E10 D)(long)5876273 6、下面选项中,不是合法整型常量的是(B )。 A)160 B)-0xcdg C)-01 D)-0x48a 7、判断int x = 0xaffbc;x的结果是(D)。 A)赋值非法B)溢出C)为affb D)为affbc 8、下面选项中,均是合法浮点数的是(B)。 A)+1e+1 B)-.60 C)123e D)-e3 A)5e-9.4 B)12e-4 C)1.2e-.4 D).8e-4 A)03e2 B)-8e5 C)+2e-1 D)5.e-0 9、在C语言中,要求参加运算的数必须时整数的运算符是(C)。 A)/ B)* C)% D) = 10、在C语言中,字符型数据在内存中以(D)形式存放。 A)原码B)BCD码C)反码D)ASCII码 11、下列语句中,符合语法的赋值语句是(C)。 A)a=7+b+c=a+7;B)a=7+b++=a+7; C)a=(7+b,b++,a+7);D)a=7+b,c=a+7; 12、是非法的C语言转义字符(B )。 A)…\b?B)…\0xf? C)…\037? D)… \?? 13、对于语句:f=(3.0,4.0,5.0),(2.0,1.0,0.0);的判断中,( B )是正确的。A)语法错误B)f为5.0 C)f为0.0 D)f为2.0 14、与代数式(x*y)/(u*v) 不等价的C语言表达式是(A )。 A)x*y/u*v B)x*y/u/v C)x*y/(u*v) D)x/(u*v)*y 15、在C语言中,数字029是一个(D)。

C语言练习题集(带答案解析)

精品文档 1. ( A )是构成C 语言程序的基本单位。 A 、函数 B 、过程 C 、子程序 D 、子例程 2. C 语言程序从 ____ C ________ 开始执行。 A ) 程序中第一条可执行语句 B )程序中第一个函数 C )程序中的main 函数 D )包含文件中的第一个函数 3、以下说法中正确的是( C )。 A 、 C 语言程序总是从第一个定义的函数开始执行 B 、 在 C 语言程序中,要调用的函数必须在 main ()函数中定义 C 、 C 语言程序总是从 main ()函数开始执行 D 、 C 语言程序中的 main ()函数必须放在程序的开始部分 4. 下列关于C 语言 的说法错误的是( B ) 。 A ) C 程序的工作过程是编辑、编译、连接、运行 B ) C 语言不区分大小写。 C ) C 程序的三种基本结构是顺序、选择、循环 D ) C 程序从main 函数开始执行 5. 下列正确的标识符是(C )。 A. -a1 B.a[i] C.a2_i 6. 下列C 语言用户标识符中合法的是( B )。 A) 3ax B)x C)case D)-e2 E)u nion 7. 下列四组选项中,正确的 C 语言标识符是 (C )。 A ) %x B ) a+b C ) a123 D ) 8、 下列四组字符串中都可以用作 A 、print _3d db8 aBc B C 、str_1 Cpp pow while D 9. C 语言中的简单数据类型包括( A 、整型、实型、逻辑型 C 、整型、字符型、逻辑型 C 语言程序中的标识符的是( A ) 、I\am one_half start$it 3pai 、Pxq My->book line# His.age D )。 B 、整型、实型、逻辑型、字符型 D 、整型、实型、字符型 10. 在C 语言程序中,表达式 5%2的结果是—C_ A)2.5 B)2 C)1 D)3 11. 如果int a=3,b=4 ;则条件表达式"a

C语言习题

练习题 2015-2016(2)重修) 判断 1. C 语言源程序文件通过了编译、连接之后 , 生成一个后缀为 .BAK 的文件。( ) 2.在 C 程序中, APH 和 aph 代表不同的变量。( ) 3.C语言中数据类型只有整型、实型和字符型。( ) 4.int i=20;switch(i/10){case 2:printf("A");case 1:printf("B");}的输出结果为A。() 5.Break语句用在循环体中,可结束本层循环,continue语句用在循环体中,可结束本次循环。() 6.函数strlen("ASDFG\n")的值是7。() 7.结构体类型只有一种。() 8.构成数组的各个元素可以有不同的数据类型。( ) 9.C语言中字符串的结束符是'\0'。( ) 10.数组名代表数组的首地址。( ) 11.函数的递归调用不过是一个函数直接或间接地调用它自身。() 12.通过return语句,函数可以带回一个或一个以上的返回值。() 13.Char *p="girl";的含义是定义字符型指针变量p,p的值是字符串"girl"。() 14.若有定义:char *p(char a[10]);则p是函数名。() 15.用fopen("file","r+");打开的文件"file"可以进行修改。() C概述,数据类型,运算符,表达式,选择结构 1.以下叙述中正确的是()。 A.程序设计的任务就是编写程序代码并上机调试 B.程序设计的任务就是确定所用数据结构 C.程序设计的任务就是确定所用算法 D.以上三种说法都不完整 2. C语言源程序的基本单位是()。 A.过程 B.函数 C.子程序 D.标识符 3. C语言规定,在一个源程序中main函数的位置()。 A.必须在最开始 B.必须在最后 C.必须在预处理命令的后面 D.可以在其他函数之前或之后 4.以下叙述中正确的是()。 A.C语言系统以函数为单位编译源程序 B.main函数必须放在程序开始 C.用户定义的函数可以被一个或多个函数调用任意多次 D.在一个函数体内可以定义另外一个函数 5. C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符() A.必须为字母 B.必须为下划线 C.必须为字母或下划线 D.可以是字母,数字和下划线中任一种字符 6.下面四个选项中,均是合法转义字符的选项是() A.'\'' '\\' '\n' B.'\' '\017' '\"' C.'\018' '\f' 'xab' D.'\\0' '\101' 'xlf' 7.下面四个选项中,均是不合法的用户标识符的选项是() A.A P_0 do B.float la0 _A C.b-a goto int D._123 temp INT 8.已知有声明 char c='1';int x=300;float t=35000;double d=3.1234567e10; ,则以下表达式求值 时除( )外其结果都可能是不准确的。 A.x=t/c B.t=d/x C.t=d/le5f D.t=x+c 9.已知有声明"int n;float x,y;",则执行语句"y=n=x=3.89;"后,y的值为()。 A.3 B.3.0 C.3.89 D.4.0 10.已知有声明"int a=3,b=4,c=5;",以下表达式中值为0的是()。

c语言习题及答案

第一章1.1 题目内容: 使用printf()在屏幕上输出hello world! 提示: #include int main() { printf("hello world!\n"); return 0; } 输入格式: 无 输出格式: 输出提示信息:"hello world!\n" 输入样例: 输出样例: hello world! #include int main() { printf("hello world!\n"); return 0; } 1.2 在屏幕上输出多行信息(3分) 题目内容: 使用printf()函数在屏幕上输出以下多行信息: hello world! hello hit! hello everyone! 提示: 在printf()函数中转义字符‘\n’表示换行。

输入格式: 输出格式: 输出提示信息: "hello world!\n" "hello hit!\n" "hello everyone!\n" 输入样例: 输出样例: hello world! hello hit! hello everyone! #include int main() { printf("hello world!\n"); printf("hello hit!\n"); printf("hello everyone!\n"); return 0; } 1.3 计算半圆弧的周长及半圆面积(3分) 题目内容: 编程并输出半径r=5.3的半圆弧的周长及该半圆的面积,的取值为3.14159。要求半径r和必须利用宏常量表示。输入格式: 无 输出格式: 半圆的面积输出格式: "Area=%f\n" 半圆弧的周长输出格式: "circumference=%f\n" 输入样例: 输出样例: Area=44.123632 circumference=16.650427 #include #define PI 3.14159 #define R 5.3 int main() { printf("Area=%f\n", R*R*PI/2); printf("circumference=%f\n", 2*R*PI/2); return 0; }

C语言例题

习题4.12 编程计算1!+2!+3!+4!+5!+6!+7!+8!+9!+10!的值。 #include main() { long term = 1,sum = 0; int i; for (i = 1; i <= 10; i++) { term = term * i; sum = sum + term; } printf("1!+2!+...+10! = %ld \n", sum); } 习题7.6 从键盘上任意输入十个整数,用函数编程实现计算最大值和最小值,并返回它们所在数组中的位置。 #include int FindMax(int num[], int n, int *pMaxPos); int FindMin(int num[], int n, int *pMinPos); main() { int num[10], maxV alue, maxPos, minV alue, minPos, i; printf("Input 10 numbers:\n "); for (i=0; i<10; i++) { scanf("%d", &num[i]); /* 输入10个数*/ } maxV alue = FindMax(num, 10, &maxPos); /* 找最大值及其所在下标位置*/ minV alue = FindMin(num, 10, &minPos); /* 找最小值及其所在下标位置*/ printf("Max=%d, Position=%d, Min=%d, Position=%d\n", maxV alue, maxPos, minV alue, minPos); } /* 函数功能:求n个数中的最大值及其所在下标位置 函数入口参数:整型数组num,存储n个整数 整型变量n,表示数组元素个数 函数出口参数:整型指针变量pMaxPos,指向的地址单元存储最大值在数组中的下标位置函数返回值:最大值 */ int FindMax(int num[], int n, int *pMaxPos) { int i, max; max = num[0]; /*假设num[0]为最大*/

c语言例题

1.从键盘上输入若干学生的一门课成绩,计算出平均分,当输入负数时结束输入。将结果输出。 7.求1!+2!+3!+……+20!,将结果输出。 #include void main() { float s=0,t=1; int n; for(n=1;n<=20;n++) { t=t*n; s=s+t; } printf("1!+2!+3!+……+20!=%e\n",s); } 2.求下列试子的值:1-1/2+1/3-1/4+……+1/99-1/100,将结果输出。 #include void main() { float sum=1.0,t,s=1; int i; for(i=1;i<=100;i++) { t=s/i; sum=sum+t; s=-s; } printf("1-1/2+1/3-1/4+……+1/99-1/100=%5.4f\n",sum); } 3.编写一个统计学生成绩程序,完成以下功能:输入4个学生的2门课成绩;求出全班的总平均分,将结果输出。 #include #define N 4 struct student { char num[3]; char name[4]; float score[2]; float avr; }

stu[N]; void main() { int i,j; float sum,average; for(i=0;i void main() { char str1[20],str2[20]; int i=0,j=0;

C语言例题及参考答案

试卷编号:537 所属语言:C语言 试卷方案:期末练习1 试卷总分:100分 共有题型:4种 一、单选共20题(共计40分) 第1题(2.0分)题号:5203 难度:易第99章 C语言源程序文件经过C编译程序编译后生成的目标文件的后缀为(exe). A:.c B:.obj C:.exe D:.bas 答案:B 第2题(2.0分)题号:5288 难度:易第2章 若变量已正确定义,执行语句scanf("%d,%d,%d ",&k1,&k2,&k3);时,()是正确的输入. A:2030,40 B:20 30 40 C:20, 30 40 D:20,30,40 答案:D 第3题(2.0分)题号:5245 难度:中第2章 以下标识符中,不能作为合法的C用户定义标识符的是(). A:putchar B:_double C:_123 D:INT 答案:A 第4题(2.0分)题号:5206 难度:中第1章 能将高级语言编写的源程序转换为目标程序的是().

A:链接程序 B:解释程序 C:编译程序 D:编辑程序 答案:C 第5题(2.0分)题号:5338 难度:较难第3章若int a=3,则执行完表达式a-=a+=a*a后,a的值是(). A:-15 B:-9 C:-3 D:0 答案:D 第6题(2.0分)题号:5306 难度:中第3章判断char型变量cl是否为小写字母的正确表达式是(). A:'a'<=cl<='z' B:(cl>=a)&&(cl<=z) C:('a'>=cl)||('z'<=cl) D:(cl>='a')&&(cl<='z') 答案:D 第7题(2.0分)题号:5379 难度:中第4章下列语句的结果是(). main() { int j; j=3; printf("%d,",++j); printf("%d",j++); } A:3,3 B:3,4 C:4,3 D:4,4 答案:D

c语言一些例题及答案

指针变量的引用: 相关运算符:&: 取地址运算符。 *:指针运算符。 练习1:int x=7,*p=&x; 则:&x对应p,*&x对应*p,x x++对应(*p)++ 练习2:输入a,b(int型)。按从小到大输出。 解法1: main() {int a,b; int *p1=&a,*p2=&b,*p; scanf("%d,%d",p1,p2); if(*p1>*p2) {p=p1;p1=p2;p2=p;} /*指针变量p1和p2的值交换*/ printf("\n%d,%d",*p1,*p2); printf("\n%d,%d",a,b);} 解法2: main() {int a,b,p,*p1=&a,*p2=&b; scanf("%d,%d",p1,p2); if(*p1>*p2) {p=*p1;*p1=*p2;*p2=p;} /* *p1和*p2交换*/ printf("\n%d,%d",*p1,*p2);printf(“\n%d,%d”,a,b);}

解法3:(指针变量做函数的参数) swap(int *p1,int *p2) {int c; c=*p1;*p1=*p2;*p2=c;} main() {int a,b; int *p3=&a,*p4=&b; scanf("%d,%d",p3,p4); if(*p3>*p4) swap(p3,p4); printf("\n%d,%d",*p3,*p4); printf("\n%d,%d",a,b);} 解法4: swap(int *p1,int *p2) {int *p; p=p1;p1=p2;p2=p;} main() {int a,b; int *p3=&a,*p4=&b; scanf("%d,%d",p3,p4); if(*p3>*p4) swap(p3,p4); printf("\n%d,%d",*p3,*p4);printf("\n%d,%d",a,b);}

c语言题目及答案

考试题型 一、单项选择题(30分) 二、填空题(20分) 三、阅读程序写结果(20分) 四、编程序题(30) 复习题一 一、选择题 1.下列说法中正确的是。 A.C语言程序由主函数和0个或多个函数组成 B.C语言程序由主程序和子程序组成 C.C语言程序由子程序组成 D.C语言程序由过程组成 2.执行语句“x=(a=3,b=a--)”后,x,a,b的值依次为。 A.3,3,2 B.3,2,2 C.3,2,3 D.2,3,2 3.设有int i=010,j=10;则printf("%d,%d\n",++i,j--); 的输出的是。 A.11,10 B.9,10 C.010,9 D.10,9 4.设a、b为字符型变量,执行scanf("a=%c,b=%c",&a,&b); 后使a为'A', b为'B',从键盘上的正确输 入是。 A.'A' 'B' B.'A','B' C.A=A,B=B D.a=A,b=B 5.已知int x=12, y=3;执行下述程序后,变量x的值是____。 do{ x/=y--;}while(x>y); A.1 B.2 C.3 D.程序运行有错误 6.C语言中while和do-while循环的主要区别是。 A.do-while的循环体至少无条件执行一次 B.while的循环控制条件比do-while的循环控制条件严格 C.do-while允许从外部转到循环体内 D.do-while的循环体不能是复合语句 7.设x和y均为int型变量,则执行下面的循环后,y的值为。 for (y=1,x=1;y<=50;y++) { if (x>=10 ) break; if (x%2==1) {x+=5;continue;} x - =3; } A.2 B.4 C.6 D.8 8.以下正确的说法是____。 A.用户若需调用标准函数,调用前必须重新定义 B.用户可以重新定义标准库函数,若如此,该函数将失去原有含义 C.系统根本不允许用户重新定义标准函数 D.用户若需要调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统 自动去调 9.若调用一个函数,且此函数中没有return语句,则关于该函数正确的说法是__ _。 A.没有返回值 B.能返回若干个系统默认值

c语言习题及答案

【习题1】 一、判断并改错 1.1 C程序执行的入口是main()函数,所以main函数必须放在程序的开头。 错误:main函数可以放在程序的任何位置。并不限定在程序的开头。 定义一个函数包括数据说明部分和执行语句部分,两者可以交叉出现。 错误:不可以交叉出现,数据说明部分在执行语句部分的前面。 scanf("%d,%d",&x,&y);的正确输入格式:3,4<回车>。 正确 注释内容太多会影响程序的执行效率。 错误:不会影响程序的执行效率。因为在编译时,编译系统将注释内容删除或用空格代替,所以注释内容不会编译到目标程序中。 二、编程题 输入圆的半径,求圆的周长,并将结果保留两位小数输出到屏幕上。 提示:定义圆的半径r,圆的周长:2**r,输出结果保留2位小数可以用%.2f 输入两个整数,输出其中最大者。 提示:模仿例 【习题2】 一、单项选择题 下面四个选项中,均是不合法的用户标识符的选项是(C)。 A)BA 、x_0、do B)float、1a0、_Y C)x-y、goto、123 D)_123、tmp、CHAR 下列选项中不正确的常数的选项是(D)。 A)0x12F B)C)D)0388 下面正确的字符常量是(B)。 A)"a" B)'\\' C)"\n" D)"\376" 下面正确的字符串常量是(C)。

A)'a' B)'376' C)"\\n" D)376 表达式'A'+4*'b'的正确结果是(B )。 A)67 B) C)不确定 D)67L 执行printf("%x",100);后的输出结果是(C )。 A)100 B)0x100 C)0X64 D)64 存储字符串"\\\'abc\376"需要的字节数是(D )。 A)11 B)13 C)6 D)7 【习题3】 一、计算题 +7%3*11%2/4 (答案: 5/2+2+7%6 (答案: 3.3 a=12,a*=2+3 (答案:a=60) 3.4 a=3,b=4,c=5,a+b>c&&b= =c (答案:0) 3>53:5<825:40 (答案:25) 设a=1,b=2,c=3,d=4,m=n=1,有表达式(m=a>b)&&(n=c>d),计算表达式后m,n 的值 (答案:m=0,n=1) 设int b=7;float a=,c=;求下面表达式的值。 a+(int)(b/2*(int)(a+c)/2)%4 (答案: 二、单项选择题 若有代数式bc xy 8 ,则不正确的C 语言表达式是(C )。 A )x/b/c*y*8 B )8*x*y/b/c C )8*x*y/b*c D )x*y/c/b*8 有如下类型说明: int k,a,b; unsigned long w=8; double x= 则以下不符合C 语言语法的表达式是(A )。 A)x%(-3) B)w*=-2

C语言习题

1.能将高级语言编写的源程序转换成目标程序的是__B____。 A) 编辑程序B) 编译程序C) 解释程序D) 链接程序2.以下选项中合法的用户标识符是__B____。 A) long B) _2Test C) 3Dmax D) A.dat 3.以下叙述正确的是( B) A) 可以把define和if定义为用户标识符 B) 可以把define定义为用户标识符,但不能把if定义为用户标识符 C) 可以把if定义为用户标识符,但不能把define定义为用户标识符 D) define和if都不能定义为用户标识符 4.以下叙述正确的是(C) A) C语言比其他语言高级 B) C语言可以不用编译就能被计算机识别执行 C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 D) C语言出现的最晚、具有其他语言的一切优点 5. 在一个C语言程序中( C) A) main函数必须出现在所有函数之前 B) main函数必须出现在所有函数之后 C) main函数可以在任何地方出现 D) main函数必须出现在固定位置 6.一个C语言程序是由___C____组成的。 A) 一个主程序和若干子程序 B) 若干子程序 C) 函数 D) 若干过程 7. 以下叙述中正确的是(B) A) C语言的源程序不必通过编译就可以直接运行

B) C语言中的每条可执行语句最终都将被转换成二进制的机器指令 C) C源程序经编译形成的二进制代码可以直接运行 D) C语言中的函数不可以单独进行编译 8.下列关于C语言用户标识符的叙述中正确的是( C) A) 用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头 B) 用户标识符中可以出现下划线,但不可以放在用户标识符的开头 C) 用户标识符中不可以出现中划线,但可以出现下划线 D) 用户标识符中可以出现下划线和中划线(减号) 9.以下说法中正确的是(C) A)C语言程序总是从第一个定义的函数开始执行 B)C语言程序中,要调用的函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分 10.默认情况下,一个C程序的执行是从(A) A)本程序的main函数开始,到main函数结束 B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的main函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序main函数结束 11.C语言编程整个操作的过程是( A) A)编辑、编译、链接、执行 B)编译、编辑、链接、执行 C)链接、编译、编辑、执行 D)编辑、链接、编译、执行 12.下列说法不正确的是(A)

C语言练习题

第四天的编程题 1.利用简单分支选择语句判断输入的一个整数是否是偶数 Int num; Printf(“%s”,”please enter valid number.”); Scanf(“%d”,&num) If (num %2 == 0) { Printf(“%s”,”you already enter valid number.”) } else { Printf(“%s”,”you enter is not valid number.”) } // query:如果用户输入的是一个字符串,程序将会发生什么事? 2.编写一个程序,要求从键盘上输入某个学生的四科成绩,求出该学生的最高分和最低分printf("请输入某个学生的四科成绩,并用逗号隔开\n"); int chineseScore,historyScore,mathScore,englishScore; scanf(“%d%d%d%d”,& chineseScore,& mathScore.& englishScore); int maxScore,minScore; maxScore=minScore= chineseScore; /* calculate reconciled maxScore*/ if (maxScore < historyScore) { maxScore = historyScore; } If (maxScore < mathScore) { maxScore = mathScore; } If (maxScore < englishScore) { maxScore = englishScore; } /* calculate reconciled minScore */ if (minScore > historyScore ) { minScore = historyScore; } if (minScore> mathScore) { minScore = mathScore;

C语言习题(1、3)

C语言习题(1、3) 第一章程序设计和C语言 一.填空题 1.C程序总是从________函数开始执行。可执行的C程序必须有且只能 有一个________函数。 2.在程序中以“/*”开始,以“*/”结束的内容,它们是程序中的________ 部分,用以帮助阅读程序。程序代码的录入,生成________程序*.c,语法分析查错,翻译生成________程序*.obj,与其他目标程序或库链接装配,生成________程序*.exe。 二.选择题 1.以下叙述不正确的是________。 A) 一个C源程序必须包含一个main函数 B) 一个C源程序可由一个或多个函数组成 C) C程序的基本组成单位是函数 D) 在C程序中,注释说明只能位于一条语句的后面 2.以下叙述正确的是________。 A) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误 B) 在C程序中,main函数必须位于程序的最前面 C) C语言本身没有输入输出语句 D) C程序的每行中只能写一条语句 3.C的源程序是由________构成的。 A) 函数和过程B) 子程序C) 文本D) 函数 4.一个C语言程序是由________。 A) 一个主程序和若干子程序组成B) 函数组成 C) 若干过程组成D) 若干子程序组成 5.47.以下说法正确的是________。 A)C语言程序总是从第一个函数开始执行 B)在C语言程序中,要调用的函数必须在main()函数中定义 C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分

第三章 最简单的C 程序设计 一.填空题 1. 在C 语言中(VC++ 6.0 环境下),一个char 型数据在内存中所占字节数为________,一个int 型数据在内存中所占字节数为________,一个long 型数据在内存中所占字节数为________,一个float 型数据在内存中所占字节数为________,一个double 型数据在内存中所占字节数位________。 2. 设x,i,j,k 都是int 型变量,表达式x=(i=4,j=16,k=32)计算后,x 的值为 。 3. 设有以下变量定义,并已赋确定值char w; int x; float y; double z; 则表达式:w*x+z-y 所求得的数据类型为 。 4. C 语言的标识符只能由大小写字母,数字和下划线三种字符组成,而且第一个字符必须为 。 5. C 语言中不带任何修饰符的浮点数(例如3.5)都是按照 类型数据存储的。 6. 在C 语言的源程序中若出现常量“1L ”,则该常量的类型是_________。 7. C 语言中,一个int 型数据在内存中占4个字节,则unsigned int 型数据的取值范围为 8. 设有int x=11,则表达式(x++*1/3)的值是 9. 若有定义:char c=‘\010’;则变量c 中包含的字符个数为 10. 假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为 。 11. 已知a,b,c 是一个十进制数的百位,十位,个位,则该数的表达式是 。 12. 若a 是int 变量,则执行表达式a=25/3%3后,a 的值是 。 13. C 语句可以分为 , , , 和 等5种类型。 14. 若有定义:int b=17; float a=4.5,c=6.5; 则表达式a+(int)(b/3*(int)(a+c)/2)%4的值 。 15. 表达式“4/5*(float)3+(float)3*4/5”的值是 。 16. 若a 为int 型变量,则表达式 (a=4*5,a*2),a+6的值为 。 17. 定义:int m=5, n=3;则表达式m/=n+4的值是 ,表达式m=(m=1,n=2,n-m)的值是 ,表达式m+=m-=(m=1)*(n=2)的值是 。 18. 与数学算式)(3b a b a +-等价的C 语言表达式是

C语言题目大全

C语言题目大全(适于大一学生) 一,顺序结构入门——及熟悉环境 1,输出Hello world. #include int main() {printf(“hel lo world”); return 0;} 两个数相加 输入两个整数 输出两个整数的和 #include int main() { int a,b; scanf("%d %d",&a,&b); printf("%d",a+b); return 0; } 已知某种铅密度为11340kg/m3 ,求9.8厘米铅球有多少kg。 这里要求:pi的取值为3.141592657,小数用double表示,printf("%lf"输出) #include int main() {double d, a=11340, b=0.049, pi=3.141592657; d=(4.0/3*pi*b*b*b)*a; printf("%lf",d); return 0; } 铅密度为11340kg/m3 ,输入外直径(cm),内径(cm),求空心球有多kg? 提示:pi的取值为3.141592657 输入格式: 两个小数(空格分隔) 输出格式: 一个小数 输入样例: 9.8 5.1 输出样例: 4.800801 #include

int main() { double a,b,pi,d,e; d=11340; pi=3.141592657; scanf("%lf %lf",&a,&b); a=a/200; b=b/200; e=d*4.0/3*pi*((a*a*a)-(b*b*b)); printf("%lf",e); return 0; } 根据三角形的三条边计算三角形的面积,其中三角形的三条边a、b、c从键盘输入,计算三角形的面积的平方公式为:p(p-a)(p-b)(p-c), 其中p=(a + b + c)/2; 输入三个数a,b,c,表示三角形的三个边长 输出三角形面积的平方值,结果保留2位小数 p(p-a)(p-b)(p-c), 其中p=( a + b + c)/2; 例如输入: 3.1 4.1 5.1 输出 40.38 注意:printf("%.2lf",double) 保留2位小数 #include int main() { double a,b,c,p,S; scanf("%lf%lf%lf",&a,&b,&c); p=((a+b+c)/2); S=p*(p-a)*(p-b)*(p-c); printf("%.2lf",S); return 0; } 求一元二次方程ax2+bx+c=0的解。a,b,c为任意实数。 输入 输入数据有一行,包括a b c的值 输出(保留2位小数) x1 x2实根,且要求x1>=x2输出。 提示计算平方根用sqrt()函数,例如 y=sqrt(x) 则y就得到x的平方根 --------------------------------------------------------------------------------------- 例如输入 1.0 4.0 1.0 输出 -0.27 -3.73

相关文档