您的位置:

知道c语言答案,c语言考试答案

本文目录一览:

求C语言练习题答案

二、填空题

1. ___变量__是指在程序运行过程中,值可以发生变化的量。

2.C语言是一种____区分_(区分/不区分)字母大小写的语言,Password和password在C语言中是两个___不同__(相同/不同)的标识符。

3.下面的转义字符分别表示:

’\b’__退格___,’\n’__换行___,’\t’__水平制表___,’\地’ __双引号字符逗"地___

4.下面常量的类型分别为:

1.5E12__浮点型___,1288L _整型____,’a’__字符___,"a"__字符串___

08 __整形___,’\007’__整型___

5. C语言源程序一定要有而且只有一个__主函数___函数,程序执行时也从它开始。

6. 结构化程序设计主要有___顺序__、__选择___和__循环___三种基本结构。

三、判断题

1. C语言不是一种结构化程序设计语言。(错)

2. C语言是弱类型语言,为了类型转换的方便,对类型的要求很不严格,在许多情况下不做类型检查。( 对 )

3. C语言既具有高级语言的特点,同时也具有部分低级语言的特点。(对)

4. C源程序可以由多个文件组成,每个文件中都可有一个主函数main()。( 错 )

5. C程序从main()函数开始执行,因此主函数main()必须放在程序的开头。(错)

6. 命名标识符时字符个数不得超过6个。(错)

7. 对于同一个数据种类型,变量值越大,它所占内存的字节数越多。(错)

8. 定义一个变量时必须指出变量类型,但是不一定必须给变量初始化。( 对 )

9. ""表示一个空字符串常量,’’表示一个空字符常量。( 对 )

10. 一个表达式中出现多种数值型数据类型,运算前先进行类型转换。( 对 )

11. 浮点数不能作自增或自减运算,只有整型才可作自增或自减运算。( 错 )

12. 已知a、b是整型变量,则表达式a=3,2+4,b=6,7+8是一个逗号表达式。( 对 )

四、问答题

1. 写出下面表达式的值

(1)12/3*9=36

(2)int i=3,j;

i*=2+5;

i/=j=4;

i+=(j%2);

i、j的最终结果是多少看i=5,j=4

(3)int a=3,b,c;

b=(a++)+(a++)+(a++);

c=(++a)+(++a)+(++a);a、b、c的最终结果是多少看a=9,b=9,c=25

2. 下列表达式是否正确?若正确,表达式的值是什么?

21/2=10 21/2.0= 10.5 21.0/2=10.5 21%2=1 21.0%2 21%2.0 18%15=3 15%18=15 3%15=3

五、编程题

编写程序,在屏幕上输出如下信息:

===================

= I am a student. =

===================

#include"stdio.h逗

void main()

{

printf("= I am a student. =");

}

c语言答案

C语言程序设计复习:

1、理解以下术语的含义:数组、函数、地址 指针 指针变量 直接访问 间接访问、结构体

2、用起泡法对10个数由小到大排序(P134例题)

5、输入10个学生的成绩,分别用函数实现下列功能:

1)计算所有学生的平均分;

2) 计算学生成绩中最高分;

3) 计算学生成绩中最低分;

4) 统计及格学生人数;

5) 查找成绩为指定成绩(如90)记录,如果没有,请给出提示,如果有,请统计满足条件的记录数。

6、有一个已经排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。(P153习题7.4)

7、编写一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字字符间空一个空格。如输入1990,应输出“1 9 9 0”。(要求用函数)(P202习题8.8)

8、编写一个函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度。(要求用指针,不能使用strlen()函数) (P279习题10.6)

9、编写一个程序,打入月份号,输出该月的英文月名。例如,输入“3”则输出“March”(要求用指针数组)。(P279习题10.18)

10、将一个数组中的值按逆序重新存放。例如,输入的数组顺序为8,6,5,4,1,要求改为1,4,5,6,8。(P153习题7.5)

11、编写一个函数用“起泡法”对输入的10个字符按由小到大顺序排序(要用函数)。(P202习题8.11)

12、将数组a中n个整数按相反顺序存放(要用函数)。(P237例题10.7)

13、输入一行文字,找出其中大写字母、小写字母、空格、数字及其他字符各有多少。(要求用指针实现)(P279习题10.8)

14、编写一个函数,将两个字符串连接(要用自定义函数,不能用strcat函数)。(P202习题8.6)

15、输入3个字符串,按照由小到大的顺序输出。(要求用指针) (P278习题10.2)

16、输入10整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数:1、输入10个数; 2、进行处理; 3、输出10个数(数据对换要求用指针实现)(P278习题10.3)

参考答案:

2、用起泡法对10个数由小到大排序

#include stdio.h

void main()

{ int a[10]; int i,j,t;

printf("input 10 numbers :\n");

for (i=0;i10;i++)

scanf("%d“,a[i]);

printf(“\n");

for(j=0;j9;j++)

for(i=0;i10-j;i++)

if (a[i]a[i+1])

{t=a[i];a[i]=a[i+1];a[i+1]=t;}

printf("the sorted numbers :\n");

for(i=0;i10;i++)

printf(“%d “,a[i]);

}

3、用递归方法求n阶勒让德多项式的值,递归公式为(要求用函数):(P202习题8.13)

pn(x)= 1 n=0

x n=1

((2n-1)*x-pn-1(x)-(n-1)*pn-2(x)/n n1

3、#include stdio.h

void main()

{

int x,n;

float p(int,int);

printf(“input n x:”);

scanf(“%d,%d”,n,x);

printf(“n=%d,x=%d\n”,n,x);

printf(“P%d(%d)=%6.2f\n”,n,x,p(n,x));

}

float p(int n,int x)

{

if(n==0)

return 1;

else if(n==1)

return x;

else

return ((2*n-1)*x*p((n-1),x)-(n-1)*p((n-2),x))/n;

}

4、输入3个整数,按由小到大的顺序输出(要求用指针类型)(P228例题)

4、输入3个整数,按由小到大的顺序输出(要求用指针类型)

#include stdio.h

void main()

{

void sort (int*a, int*b,int*c);

int a,b,c;

scanf("%d%d%d",a,b,c);

sort(a,b,c);

printf("a=%d,b=%d,c=%d\n",a,b,c);

}

void sort (int *a, int *b,int *c)

{

int tmp;

if (*a*b)

{

tmp=*a;

*a=*b;

*b=tmp;

}

if (*a*c)

{

tmp=*a;

*a=*c;

*c=tmp;

}

if (*b*c)

{

tmp=*b;

*b=*c;

*c=tmp;

}

}

5、输入10个学生的成绩,分别用函数实现下列功能:

1)计算所有学生的平均分;

6) 计算学生成绩中最高分;

7) 计算学生成绩中最低分;

8) 统计及格学生人数;

9) 查找成绩为指定成绩(如90)记录,如果没有,请给出提示,如果有,请统计满足条件的记录数。

#include stdio.h

void main()

{

int average(int a[]);

int max(int a[]);

int min(int a[]);

int pass(int a[]);

int search(int a[],int g);

int i,j,g;

int score[10],aver,m1,m2,p,s;

printf("Please input 10 scores:\n");

for(i=0;i10;i++)

scanf("%d",score[i]);

printf("\n");

aver=average(score);

m1=max(score);

m2=min(score);

p=pass(score);

printf("平均分为: %d\n",aver);

printf("最高分为: %d\n",m1);

printf("最低分为: %d\n",m2);

printf("及格人数为: %d\n",p);

printf("需要查找吗?\n");

printf("输入1继续查找,输入0退出(1/0):");

scanf("%d",j);

if(j==1)

{

printf("请输入要查找的分数: \n");

scanf("%d",g);

s=search(score,g);

if(s==0)

printf("没有满足条件的记录");

else

printf("成绩为%d的学生共有%d名\n",g,s);

}

}

int average(int a[])

{

int i;

int aver,sum=a[0];

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

sum=sum+a[i];

aver=sum/10;

return aver;

}

int max(int a[])

{

int i;

int m=a[0];

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

if(ma[i])

m=a[i];

return m;

}

int min(int a[])

{

int i;

int m=a[0];

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

if(ma[i])

m=a[i];

return m;

}

int pass(int a[])

{

int i;

int s=0;

for(i=0;i10;i++)

if(a[i]=60)

s++;

return s;

}

int search(int a[],int g)

{

int i;

int s=0;

for(i=0;i10;i++)

if(a[i]==g)

s++;

return s;

}

6、已有一个已排好次序的数组,要求输入一个数后,按原先排序的规律将它插入数组中。

Void main()

{int a[11]={1,4,6,9,13,16,19,28,40,100};

int temp1,temp2,number,end,i,j;

printf("初始数组如下:");

for (i=0;i10;i++)

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

printf("\n");

printf("输入插入数据:");

scanf("%d",number);

end=a[9];

if(numberend)

a[10]=number;

else

{for(i=0;i10;i++)

{ if(a[i]number)

{temp1=a[i];

a[i]=number;

for(j=i+1;j1;j++)

{temp2=a[j];

a[j]=temp1;

temp1=temp2;

}

break;

}

}

}

for(i=0;i11;i++)

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

}

7、编写一个函数,输入一个4位数字,要求输出这4个数字字符,但每两个数字字符间空一个空格。如输入1990,应输出“1 9 9 0”。

#include iostream

void main()

{

void stradd(char str[]);

char str[80];

printf("输入一串数字\n\n");

gets(str);

stradd(str);

printf("\n\n加空格后的字符串\n\n");

puts(str);

}

void stradd(char str[])

{

char a[80];

int i=0,j;

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

{

a[i]=str[j];

a[i+1]=' ';

i+=2;

}

a[i]='\0';

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

{

str[i]=a[i];

}

str[i]='\0';

}

8、编写一个函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度。(要求用指针实现)

#include "stdio.h"

int stringlength( char *str )

{int n;

n=0;

While(*str!=0)

{n++;

str++;

}

Return(n);

}

int main()

{

char str〔100〕,

int len,

printf("Please input a string: "),

scanf("%s".str),

len = stringlength( str ),

printf("The string’s length is %d.".len),

return 0;

}

9、编写一个程序,打入月份号,输出该月的英文月名 n。例如,输入“3”则输出“March”,要求用指针数组处理。

#include stdio.h

main()

{ char *month_name[13]={"illegal month","January","February","March","April",

"May","June","July","August","September","October","November","December"};

int n;

printf("Input month: ");

scanf("%d",n);

if((n=12)(n=1))

printf("It is %s.\n",*(month_name+n));

else

printf("It is wrong.\n");

}

10、将一个数组中的值按逆序重新存放。例如,输入的数组顺序为8,6,5,4,1,要求改为1,4,5,6,8。

#include stdio.h

#define N 5;

void main()

{

int a[N],i,temp;

printf(“enter array a:\n”);

for(i=0;iN;i++)

scanf(“%d”,a[i]);

printf(“array a:\n”);

for(i=0;iN;i++)

{temp=a[i];a[i]=a[N-i-1];a[N-i-1]=temp;}

printf(“\nNow, array a:\n”);

for(i=0;iN;i++)

printf(“%4d”,a[i]);

printf(“\n”);

}

11、编写一个函数用“起泡法”对输入的10个字符按由小到大顺序排序(要用函数)。

#include stdio.h

void main()

{ char str[80];

void sort(char str[]);

printf("输入一个字符串\n\n");

gets(str);

sort(str);

printf("\n\n字符由小到大排序为:\n\n");

puts(str);

}

void sort(char str[])

{ int i,j;

char temp;

for(i=0;istrlen(str);i++)

{

for(j=0;jstrlen(str)-i-1;j++)

{

if(str[j]str[j+1])

{

temp=str[j];

str[j]=str[j+1];

str[j+1]=temp;

}

}

}

}

12、将数组a中n个整数按相反顺序存放(要用函数)。

#include stdio.h

void inv(int x[ ],int n)/*形参x是数组名*/

int temp,i,j,m=(n-1)/2;

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

{j=n-1-i;

temp=x[i];x[i]=x[j];x[j]=temp;}

return;

void main()

{ int i,a[10]={3,7,9,11,0,6,7,5,4,2};

printf(“转换前的数组为:\n");

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

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

printf("\n");

inv(a,10);

printf(“转换后的数组为:\n");

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

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

printf("\n");

13、输入一行文字,找出期中大写字母、小写字母、空格、数字及其他字符各有多少?(要求用指针实现)

#includestdio.h

#includestring.h

int main()

{

char str[40];//创建字符串数组

int count[5]={0,0,0,0};//创建计数器数组并初始化

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

scanf("%s",str);

char *p=str;//指针p指向字符串数组str

int n=strlen(str);//确定输入字符串的长度

for(int i=0;in;i++)

{

if(*(p+i)='A'*(p+i)='Z')

{

count[0]++;//统计大写字母数目

}

else if(*(p+i)='a'*(p+i)='z')

{

count[1]++;//统计小写字母数目

}

else if(*(p+i)='0'*(p+i)='9')

{

count[2]++;//统计数字数目

}

else if(*(p+i)=='')

{

count[3]++;//统计空格数目

}

else

{

count[4]++;//统计其他字符数目

}

}

printf("大写字母 小写字母 数字 空格 其他字符:\n");

for(i=0;i5;i++)

{

printf("%d\t ",count[i]);//打印各统计数目

}

printf("\n\n");

return 0;

}

14、编写一个函数,将两个字符串连接。

#include stdio.h

#includestring.h

void concatenate(char string1[],char string2[],char string[])

{

int i,j;

for(i=0;string1[i]!=’\0’;i++)

string[i]=string1[i];

for(j=0;string2[j]!=’\0’;j++)

string[i+j]=string2[j];

string[i+j]=’\0’;

}

void main()

{

char s1[100],s2[100],s[100];

printf(“input string1:”);

scanf(“%s”,s1);

printf(“input string2:”);

scanf(“%s”,s2);

concatenate(s1,s2,s)

printf(“the new string is %s”,s);

}

15、输入3个字符串,按照由小到大的顺序输出。 (要求用指针实现)

#include stdio.h

void main()

{

void sort (int*a, int*b,int*c);

int a,b,c;

scanf("%d%d%d",a,b,c);

sort(a,b,c);

printf("a=%d,b=%d,c=%d\n",a,b,c);

}

void sort (int *a, int *b,int *c)

{

int tmp;

if (*a*b)

{

tmp=*a;

*a=*b;

*b=tmp;

}

if (*a*c)

{

tmp=*a;

*a=*c;

*c=tmp;

}

if (*b*c)

{

tmp=*b;

*b=*c;

*c=tmp;

}

}

16、输入10整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数:1、输入10个数; 2、进行处理; 3、输出10个数(数据对换要求用指针实现)

#include stdio.h

void input(int number[])

{

Int I;

Printf(“input 10 numbers:”);

For(i=0;i10;i++)

Scanf(“%d”,number[i]);

}

void max_min_value(int number[])

{

int *max,*min,*p,temp;

max=min=number;

For(p=number+1;pnumber+10;p++)

if(*p*max)

max=p;

else if(*p*min)

min=p;

temp=number[0];number[0]=*min;*min=temp;

if(max=number) max=min;

temp=number[9];number[9]=*max;*max=temp;

}

void output(int number[])

{

int *p;

printf(“Now, they are: “);

for(p=number;pnumber+10;p++)

Printf(“%d”,*p);

printf(“\n”);

}

void main()

{

int number[10];

input(number);

max_min_value(number);

output(number);

}

求C语言正确答案

题目中有异议的就第四题和第12题

第四题中答案应该是C 而第十二题应该选A

c语言编程题及答案

【4.1】已知银行整存整取存款不同期限的月息利率分别为:

0.315% 期限一年

0.330% 期限二年

月息利率 = 0.345% 期限三年

0.375% 期限五年

0.420% 期限八年

要求输入存钱的本金和期限,求到期时能从银行得到的利息与本金的合计。

【4.2】输入年份year和月month,求该月有多少天。判断是否为闰年,可用如下C语言表达式:year%4==0 year0!=0 || year@0==0。若表达式成立(即表达式值为1),则year为闰年;否则,表达式不成立(即值为0),year为平年。

【4.3】编写一个简单计算器程序,输入格式为:data1 op data2。其中data1和data2是参加运算的两个数,op为运算符,它的取值只能是+、-、*、/。

【4.4】输入n值,输出如图所示矩形。

【4.5】输入n值,输出如图所示平行四边形。

【4.6】输入n值,输出如图所示高为n的等腰三角形。

【4.7】输入n值,输出如图所示高为n的等腰三角形。

【4.8】输入n值,输出如图所示高和上底均为n的等腰梯形。

【4.9】输入n值,输出如图所示高和上底均为n的等腰空心梯形。

【4.10】输入n值,输出如图所示边长为n的空心正六边型。

C语言选择题,知道的请告诉我答案

D不可以用FILE定义指向二进制文件的文件指针。答案:D解析:概念的理解,参考课本。FILE可以指向二进制和文本文件。

求C语言习题解答

1、

#include stdio.h#define STU 30#define COURSE 3void Input(long num[ ],int score[ ][COURSE],int n);void GetSumAver(int score[ ][COURSE],int n,int sum[ ],float aver[ ]);void Sort(long num[ ],int score[ ][COURSE],int n,int sum[ ],float aver[ ]);void Print(long num[ ],int score[ ][COURSE],int n,int sum[ ],float aver[ ]);int Search(long num[ ], int n, long x);main(){int n, score[STU][COURSE], sum[STU], pos;long num[STU], x;float aver[STU];printf("Please enter the total number of the students(n=30):");scanf("%d", n); /*输入参加考试的学生人数*/printf("Enter No. and score as: MT EN PH\n");Input(num, score, n); /*输入学生成绩*/GetSumAver(score, n, sum, aver); /*计算总分和平均分*/printf("Before sort:\n");Print(num, score, n, sum, aver);Sort(num, score, n, sum, aver); /*排名次*/printf("After sort:\n");Print(num, score, n, sum, aver);printf("Please enter searching number:");scanf("%ld", x); /*以长整型格式输入待查找学生的学号*/pos = Search(num, n, x); /*名次查询*/if (pos != -1){printf("position:\t NO \t MT \t EN \t PH \t SUM \t AVER\n");printf("%8d\t%4ld\t%4d\t%4d\t%4d\t%5d\t%5.0f\n", pos+1,num[pos], score[pos][0],score[pos][1], score[pos][2], sum[pos],aver[pos]);}else{printf("Not found!\n");}}/* 函数功能:输入某班学生学号及期末考试三门课程成绩 函数参数:长整型数组num,存放学生学号 整型数组score,存放学生成绩 整型变量n,存放学生人数 函数返回值:无*/void Input(long num[ ], int score[ ][COURSE], int n){int i, j;for (i=0; in; i++){scanf("%ld", num[i]);for (j=0; jCOURSE; j++){scanf("%d", score[i][j]);}}}/* 函数功能:计算每个学生的总分和平均分 函数参数:整型数组score,存放学生成绩 整型变量n,存放学生人数 整型数组sum,计算得到的每个学生的总分 实型数组aver,计算得到的每个学生的平均分 函数返回值:无*/void GetSumAver(int score[ ][COURSE], int n, int sum[ ], float aver[ ]){int i, j;for (i=0; in; i++){sum[i] = 0;for (j=0; jCOURSE; j++){sum[i] = sum[i] + score[i][j];}aver[i] = (float)sum[i] / COURSE;}}/* 函数功能:按总分成绩由高到低排出成绩的名次 函数参数:长整型数组num,存放学生学号 整型数组score,存放学生成绩 整型变量n,存放学生人数 整型数组sum,存放每个学生的总分实型数组aver,存放每个学生的平均分 函数返回值:无*/void Sort(long num[ ],int score[ ][COURSE], int n, int sum[ ], float aver[ ]){int i, j, k, m;int temp1;long temp2;float temp3;for (i=0; in-1; i++){k = i;for (j=i+1; jn; j++){if (sum[j] sum[k]) k = j;}if (k != i){temp1 = sum[k]; sum[k] = sum[i]; sum[i] = temp1;temp2 = num[k]; num[k] = num[i]; num[i] = temp2;temp3 = aver[k]; aver[k] = aver[i]; aver[i] = temp3;for (m=0; mCOURSE; m++){temp1 = score[k][m];score[k][m] = score[i][m];score[i][m] = temp1;}}}}/* 函数功能: 打印名次表,表格内包括学生编号、各科分数、总分和平均分 函数参数: 长整型数组num,存放学生学号 整型数组score,存放学生成绩 整型变量n,存放学生人数 整型数组sum,存放每个学生的总分 实型数组aver,存放每个学生的平均分 函数返回值:无*/void Print(long num[ ], int score[ ][COURSE], int n,int sum[ ], float aver[ ]){int i, j;printf(" NO \t| MT \t EN \t PH \t SUM \t AVER\n");printf("----------------------------------------------------\n");for (i=0; in; i++){printf("%ld\t| ", num[i]);for (j=0; jCOURSE; j++){printf("%4d\t", score[i][j]);}printf("%5d\t%5.0f\n", sum[i], aver[i]);}}/* 函数功能:在学号数组中顺序查找学生的学号 函数参数:长整型数组num,存放学生学号 整型变量n,存放学生人数长整型变量x,存放待查找学生的学号 函数返回值:找到时,返回学生学号在学号数组中的下标位置,否则返回值-1*/int Search(long num[ ], int n, long x){int i;for (i=0; in; i++){if (num[i] == x) return(i);}return (-1);}

4、答案:#include stdio.h

void main()

{ int i , j;

double a[3][4], b[4][3];

printf("请输入原始矩阵:\n");

for(i=0;i3; i++)

for( j=0; j4 ; j++)

scanf ("%lf", a[i][j]);

printf("计算转置矩阵:\n");

for(i=0;i3; i++)

for( j=0; j4 ; j++) b[j][i]=a[i][j];

printf("输出原始矩阵:\n");

for(i=0;i3; i++)

{

for( j=0; j4 ; j++) printf(" %10.2f ",a[i][j]);

printf("\n");

}

printf("输出转置矩阵:\n");

for(i=0;i4; i++)

{

for( j=0; j3 ; j++) printf(" %10.2f ",b[i][j]);

printf("\n");

}

}

知道c语言答案,c语言考试答案

2022-12-02
c语言考试题及答案下载,c语言 题库

2022-11-30
c语言去哪找答案,c语言在哪里找答案

2023-01-05
国二c语言答题,国二c语言试题

2023-01-04
c语言选项答案,c语言题目及答案

2022-11-24
c语言复习考点,c语言考试基础知识点总结

2022-11-26
c语言试题及答案过程详解,c语言考试题库及答案

2022-11-26
c语言程序设计考试题及其答案,C语言程序设计考试答案

2023-01-05
二级c语言笔试真题及答案下载,二级c语言笔试真题及答案下载

2023-01-05
软考c语言真题,软考c语言真题及答案

2022-11-23
c语言题与答案下载,c语言简答题和答案

2022-12-01
c语言编写答案,c语言编程答案

2023-01-07
知道创宇c语言笔试题,宇视科技c语言笔试题

2023-01-06
山建c语言试题,c语言赵山林编程题答案

2022-12-01
二级c语言考前,二级c语言考前培训班

2023-01-07
c语言填空2答案,c语言填空题及答案

2023-01-04
备考c语言二级,备考c语言二级需要多久

2022-11-29
c语言程序设计试题及答案解析1,c语言程序设计考试题库答案

2023-01-06
二级考试java语言复习试卷(计算机二级java语言题库及答

2022-11-11
搜c语言题咋搜,怎么搜c语言答案

本文目录一览: 1、有什么软件可以搜索大学C语言题目的啊? 2、菜鸟学c语言怎么搜题 3、c语言拍照搜题软件哪个好 4、c语言题库(适合大一计科新生的)怎么找 有什么软件可以搜索大学C语言题目的啊?

2023-12-08