① 求c语言练习题答案。。。
错,错,2,1,2,3,2,2,2,2
(答案仅供参考,毕竟不是真试卷,可能有笔误)
② c语言习题,求答案!
17 C 19 B 20 D 21 C(21这题貌似有问题) 22 B 23 A 24 D 25 A 26 C 27 B 28 C 29 D 30 D
不能保证全对,但是希望可以帮上你
③ 求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;i<10;i++)
scanf("%d“,&a[i]);
printf(“\n");
for(j=0;j<9;j++)
for(i=0;i<10-j;i++)
if (a[i]>a[i+1])
printf("the sorted numbers :\n");
for(i=0;i<10;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 n>1
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;i<10;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;i<10;i++)
sum=sum+a[i];
aver=sum/10;
return aver;
}
int max(int a[])
{
int i;
int m=a[0];
for(i=1;i<10;i++)
if(m<a[i])
m=a[i];
return m;
}
int min(int a[])
{
int i;
int m=a[0];
for(i=1;i<10;i++)
if(m>a[i])
m=a[i];
return m;
}
int pass(int a[])
{
int i;
int s=0;
for(i=0;i<10;i++)
if(a[i]>=60)
s++;
return s;
}
int search(int a[],int g)
{
int i;
int s=0;
for(i=0;i<10;i++)
if(a[i]==g)
s++;
return s;
}
6、已有一个已排好次序的数组,要求输入一个数后,按原先排序的规律将它插入数组中。
Void main()
;
int temp1,temp2,number,end,i,j;
printf("初始数组如下:");
for (i=0;i<10;i++)
printf("%5d",a[i]);
printf("\n");
printf("输入插入数据:");
scanf("%d",&number);
end=a[9];
if(number>end)
a[10]=number;
else
{for(i=0;i<10;i++)
{ if(a[i]>number)
{temp1=a[i];
a[i]=number;
for(j=i+1;j<1;j++)
{temp2=a[j];
a[j]=temp1;
temp1=temp2;
}
break;
}
}
}
for(i=0;i<11;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;i<N;i++)
scanf(“%d”,&a[i]);
printf(“array a:\n”);
for(i=0;i<N;i++)
printf(“\nNow, array a:\n”);
for(i=0;i<N;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;i<strlen(str);i++)
{
for(j=0;j<strlen(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、输入一行文字,找出期中大写字母、小写字母、空格、数字及其他字符各有多少?(要求用指针实现)
#include<stdio.h>
#include<string.h>
int main()
{
char str[40];//创建字符串数组
int count[5]=;//创建计数器数组并初始化
printf("Please input a string .\n");
scanf("%s",str);
char *p=str;//指针p指向字符串数组str
int n=strlen(str);//确定输入字符串的长度
for(int i=0;i<n;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;i<5;i++)
{
printf("%d\t ",count[i]);//打印各统计数目
}
printf("\n\n");
return 0;
}
14、编写一个函数,将两个字符串连接。
#include < stdio.h >
#include<string.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;i<10;i++)
Scanf(“%d”,&number[i]);
}
void max_min_value(int number[])
{
int *max,*min,*p,temp;
max=min=number;
For(p=number+1;p<number+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;p<number+10;p++)
Printf(“%d”,*p);
printf(“\n”);
}
void main()
{
int number[10];
input(number);
max_min_value(number);
output(number);
}
⑤ c语言编程基础 课后习题答案
给你分享一个特别好的练习基础的,是网络的,一百道各种各样的题,有题目代码和分析。
http://tieba..com/f?kz=8618367
⑥ c语言程序设计基础习题答案
1、
10,12,ai=2E
2、
#include
main(){
int
n,sum=0;
scanf
("%d",&n);
while(n!=0){
sum=sum+n%10;
n=n/10;
}
printf("sum=%d",sum);}
3、
#include
int
main(){
int
up
=
0,low
=
0;
char
array[100]
=
{0};
gets(array);
for(int
i
=
0;i='a'&&array[i]='A'&&array[i]<='Z'){
low++;
}
}
printf("大写字母个数:%d,小写字母个数:%d",up,low);
return
0;}
4、
#include
int
main(){
float
score[10]={0};
float
sum
=
0;
int
pass
=
0;
float
ave
=
0;
for(int
i
=
0;i=60){
pass++;
}
}
ave=sum/10.0;
printf("平均分%g\n",sum/10.0);
printf("及格人数%d\n",pass);
printf("高于平均分的分数:\n");
for(int
i
=0;i=ave){
printf("%g\n",score[i]);
}
}
return
0;}
⑦ C语言习题 急求答案
1
#include<stdio.h>
main()
{
int x;
printf("请输入一个整数");
scanf("%d",&x);
printf("%d",x);
}
2
#include<stdio.h>
main()
{
int x,y;
printf("请输入两个整数");
scanf("%d,%d",&x,&y);
if(x>y)
{
printf("最大值为%d",x);
}
else
{
printf("最大值为%d",y);
}
}
3
#include<stdio.h>
main()
{
int a[4]={0,1,2,3,4};
int i=0;
for(i=0;i<5,i++)
printf("%d",a[i]);
}
4
#include<stdio.h>
main()
{
int a[4]={1,2,3,4,5};
int i=0;
int j=1;
for(i=0;i<5,i++)
j=j*a[i];
printf("积为:%d",j)
}
⑧ 求C语言练习题答案,这几个题我不确定,拜托明白的帮忙看下!急用的,最好能解释一下
9. 设int a[10];则对a数组元素的错误引用是( )
A.a[5] B.*(a+1) C.a[10-10] D.a(5)
D是错误的,因为a是数组,不是函数。
11.设double * p[6];则( C 这个没法解释 )
A.p是指向double型变量的指针
B.p是double型数组
C.p是指针数组,其元素是指向double型变量的指针
D.p是数组指针,指向double型数组
16.设有定义
struct rol{
long x;
float y;
} time;
*timep=&time;
问题呢?
18.C语言中,系统自动打开的文件是( D 输入输出设备文件,就是 stdin/stdout/stderr三个文件 )
A.二进制文件 B.随机文件
C.非缓冲文件 D.设备文件
20.执行下列程序
#include "stdio. h"
min ()
{printf("%d\n",NULL);}
后输出的结果是( B 一般是0,但是你写程序的时候不要直接写零 )
A.-1 B.0 C.1 D.2
21.C语言程序编译时,程序中的注释部分( D 这个没法解释,注释在编译预处理阶段就被删除了 )。
A.参加编译,并会出现在目标程序中
B.参加编译,但不会出现在目标程序中
C.不参加编译,但会出现在目标程序中
D.不参加编译,也不会出现在目标程序中
26.下列语句定义p为指向float类型变量d的指针,其中哪一个是正确的( B 没法解释,根据C语法得出 )。
A. float d,*p=d; B. float d,*p=&d;
C. float d,p=d; D. float *p=&d,d;
27.执行语句“for(i=0;i<10;++i,++a)scanf(〃%d〃,a);”试图为int类型数组a〔10〕输入数据,是错误的,错误的原因是( B )。
A.指针变量不能做自增运算 B.数组首地址不可改变
C.++i应写作i++ D.++a应写作a++
28.函数调用语句fun((((1,2),3),4));中参数的个数是( A 只有一个,(((1,2),3),4) 也就是4作为参数被传递给函数fun )。
A.1 B.2 C.3 D.4
10.设 int a [2][4], (*p)[4]=a;用指针变量p表示数组元素a[1][2]为___p[1][2]________。
12.计算机算法通常采用以下三种方法表示:____这个,我不知道_____、___________、__________。
17.在执行输入语句scanf(“a=%d?b=%d?c=%d”,a,b,c);时,用户应相应的在屏幕上输入_______a=8?b=7?c=5_______________________,才能使变量a,b,c的值分别为8,7,5。
能回答的尽量帮忙啊
⑨ c语言习题求解答。
#include <stdio.h>是引入头文件 这个头文件是 stdio.h标准输入输出
第一个int fun 是一个函数 返回整数型(int) fun是函数名 当然 括号里(int x,int y)是两个整数型参数
函数体由{}括起来 if(x!=y) return((x+y)/2); else return (x);这两句是 如果x不等于y则返回(x+y)/2 的值 否则 返回 x的值
下面的main 是主函数 程序加载完头文件自动运行main函数 一个程序必须要有main函数 一般是int main()这样写比较规范 int a=4,b=5,c=6;这是定义三个整数变量 a,b,c 并赋予初值 语句结束后一定要加分号 printf是输出函数 头文件带的 printf(“%d”,整数变量);这句就是输出整数变量的值 当然 整数变量的位置也可以是一个又返回值的函数 %d代表以一个整数变量替换 不懂的请追问
⑩ 头歌的答案在哪里找IT项目管理
在网站里查找。
项目是一个特殊的将要被完成的有限任务,它在一定时间内满足一系列特定目标的多项工作名称。
IT项目管理是项目管理在IT领域的应用,结合IT行业特点运用项目管理技术、理念和方法,启动计划实时控制和收尾等过程。