=1&&xelsep" />
当前位置:文档之家› 华农C语言教材习题答案

华农C语言教材习题答案

华农C语言教材习题答案
华农C语言教材习题答案

注:答案仅供参考

分期还款:

#include

#include

int main()

{

double d, p,r;

scanf("%lf%lf%lf",&d,&p,&r);

printf("%.1f", log10(p/(p-d*r))/log10(1+r));

return 0;

}

计算分段函数函数值:

#include

int main()

{

double x;

scanf("%lf",&x);

if(x<1) printf("%.2f", x);

else if(x>=1 && x<10) printf("%.2f", 2*x-1);

else printf("%.2f", 3*x-11);

}

成绩等级评分:

#include

#include

int main()

{

int score;

scanf("%d", &score);

if(score>100 || score<0)

printf("error");

else if(score>=90)

printf("A");

else if(score>=80)

printf("B");

else if(score>=70)

printf("C");

else if(score>=60)

printf("D");

else

printf("E");

return 0;

}

20秒后时间:

#include

#include

int main()

{

int h,m,s;

scanf("%d:%d:%d", &h,&m,&s);

s=s+20;

if(s>59)

{

s=s%60;

m++;

if(m>59)

{

m=m%60;

h++;

if(h>23)

h=0;

}

}

printf("%02d:%02d:%02d\n", h, m, s);

return 0;

}

分期还款(加强版):

#include

#include

int main()

{

double d, p,r;

scanf("%lf%lf%lf",&d,&p,&r);

if(d==0)

printf("0.0\n");

else if(d*(1+r)-p>d)

printf("God\n");

else

{

printf("%.1f", log10(p/(p-d*r))/log10(1+r));

}

return 0;

}

字母分类统计:

#include

#include

int main()

{

char ch;

int nL=0, nN=0, nS=0, nO=0;

while((ch=getchar())!='\n')

{

if(ch>='a'&&ch<='z'||

ch>='A'&&ch<='Z')

nL++;

else if (ch>='0'&&ch<='9')

nN++;

else if (ch==' ')

nS++;

else

nO++;

}

printf("%d %d %d %d\n", nL, nN, nS, nO);

return 0;

}

计算数列和:

#include

main()

{ int i,n;

double a=2,b=1,s=0;

scanf("%d",&n);

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

{ s=s+a/b;

a=a+b;

b=a-b;

}

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

}

自由落体:

#include

#include

int main()

{

double sum=-100, d=100;

int i,n;

scanf("%d", &n);

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

{

sum+=2*d;

d/=2;

}

printf("%.3f %.3f", sum, d);

return 0;

}

迭代法求平方根:

#include

#include

int main()

{

double a, x0, x1=1;

scanf("%lf", &a);

do

{

x0=x1;

x1=1.0/2*(x1+a/x1);

}while(fabs(x1-x0)>=1e-5);

printf("%.4lf\n", x1);

return 0;

}

打印三角形:

#include

#define abs(x) ((x)>=0?(x):-(x))

int main()

{

int n,i,j;

scanf("%d", &n);

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

{

for(j=0; j

printf(" ");

for(j=0; j

printf("*");

printf("\n");

}

return 0;

}

勾股数:

#include

#include

int main()

{

int i,j,k,n;

scanf("%d", &n);

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

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

{

k=(int)sqrt(i*i+j*j);

if(k*k==i*i+j*j && k<=n)

printf("%d %d %d\n", i,j,k);

}

return 0;

}

插入数据:

int n,i;

scanf("%d", &n);

for(i=14; i>=0; i--)

if(a[i]>n) a[i+1]=a[i];

else break;

a[i+1]=n;

输出不同的数:

#include"stdio.h"

main()

{ int a[20];

int i,t,p=0;

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

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

for(t=0;t

if(a[t]==a[i])break;

if(t==i)

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

}

}

鞍点:

#include

#include

int main()

{

int i,j,a[3][4],flag=0,col,r;

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

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

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

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

{

col=0;

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

if(a[i][j]>a[i][col]) col=j;

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

{

if(a[i][j]==a[i][col])

{

for(r=0;r<3;r++)

if(a[r][j]

if(r==3)

{

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

flag=1;

}

}

}

}

if(!flag)

printf("NO\n");

return 0;

}

回文串:

#include "stdio.h"

#include "string.h"

main()

{ int i, j;

char buf[100];

scanf("%s",buf);

for(i=0, j=strlen(buf)-1;i

if(buf[i]!=buf[j]) break;

if(i>=j)

printf("Y");

else

printf("N");

}

ASCII码值之和的差:

#include

int sum(char *s)

{

int t=0,i=0;

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

t+=s[i++];

return t;

}

int main()

{

char s1[81],s2[82];

gets(s1);

gets(s2);

printf("%d", sum(s1)-sum(s2));

return 0;

}

所有数字之和:

#include "stdio.h"

int sum(int n)

{

int ret=0;

while(n>0)

{

ret+=n%10;

n/=10;

}

return ret;

}

main()

{

int n;

scanf("%d", &n);

printf("%d", sum(n));

}

元音字母:

#include "stdio.h"

void yuan(char *s,char *s2)

{

while(*s!='\0')

{

if(*s=='a' ||*s=='o' ||*s=='e' ||*s=='i' ||*s=='u' || *s=='A' ||*s=='O' ||*s=='E' ||*s=='I' ||*s=='U')

{*s2=*s; s2++;}

s++;

}

*s2='\0';

}

main()

{

char str[81], str2[81];

gets(str);

yuan(str,str2);

printf("%s", str2);

}

字符统计:

#include

#include

#include

int nL=0, nN=0;

int statistics(char *s)

{

int ret=0;

while(*s!='\0')

{

if(*s>='a'&&*s<='z'||

*s>='A'&&*s<='Z')

nL++;

else if (*s>='0'&&*s<='9')

nN++;

else if (*s==' ')

ret++;

s++;

}

return ret;

}

int main()

{

char s[81];

int nS;

gets(s);

nS = statistics(s);

printf("%d %d %d\n", nL, nN, nS);

return 0;

}

选择排序:

#include

int sort(int a[], int n)

{

int i,j,k,tmp;

for(i=0;i

{

k=i;

for(j=i+1; j

if(a[k]>a[j]) k=j;

tmp=a[k];a[k]=a[i];a[i]=tmp;

}

}

int main()

{

int a[10];

int i;

for(i=0; i<10; i++) scanf("%d", &a[i]);

sort(a,10);

for(i=0; i<10; i++) printf("%d\n", a[i]);

return 0;

}

x的n次方:

#include

int F(int x, int n)

{

if(n==1) return x;

else return F(x, n-1)*x;

}

int main()

{

int x, n;

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

printf("%d", F(x, n));

return 0;

}

行列互换:

#include

void s *a, int *b)

{

int temp;

temp=*a;*a=*b;*b=temp;

}

void col(int a[][4], int i, int j)

{

int k;

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

s[k][i], &a[k][j]);

}

void row(int a[][4], int i, int j)

{

int k;

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

s[i][k], &a[j][k]);

}

int main()

{

int a[4][4];

int i,j;

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

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

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

col(a,0,2);

row(a,0,2);

col(a,1,3);

row(a,1,3);

col(a,0,3);

row(a,0,3);

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

{

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

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

printf("\n");

}

return 0;

}

学生信息统计:

#include

void average(double a[][5], int n) {

int i,j;double sum;

for(i=0; i

{

sum=0;

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

sum+=a[i][j];

printf("%.2f ", sum/5);

}

printf("\n");}

void average2(double a[][5], int n)

{

int i,j;double sum;

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

{

sum=0;

for(i=0; i

sum+=a[i][j];

printf("%.2f ", sum/n);

}

printf("\n");}

void top(double a[][5], int n)

{

int i,j; double max;

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

{

max=a[0][j];

for(i=1; i

if(a[i][j]>max) max = a[i][j];

printf("%.2f ", max);

}

printf("\n");}

int main()

{

double a[10][5];

int i, j;

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

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

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

average(a,10);

average2(a,10);

top(a,10);

return 0;

}

一年的第几天:

#include

struct DATE

{

int year;

int month;

int day;

};

int days(struct DATE date)

{

int day,sum;

if(date.year%4==0&&date.year%100!=0||date.year%400==0) {

day=29;

}

else

{

day=28;

};

switch(date.month)

{

case 1:sum=0;break;

case 2:sum=31;break;

case 3:sum=31+day;break;

case 4:sum=62+day;break;

case 5:sum=92+day;break;

case 6:sum=123+day;break;

case 7:sum=153+day;break;

case 8:sum=184+day;break;

case 9:sum=215+day;break;

case 10:sum=245+day;break;

case 11:sum=276+day;break;

case 12:sum=306+day;break;

};

return(sum+date.day);

}

int main()

{

struct DATE d;

scanf("%d-%d-%d", &d.year, &d.month, &d.day);

华南农业大学C语言实验上机实验第四版参考答案

华南农业大学C语言实验上机实验第四版参考答案 标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-

C语言程序设计上机实验指导与习题 参考答案(第四版) (学生改编) 实验 1 C语言程序初步 一、实验目的 (1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。 (2)了解在该系统上如何编辑、编译、连接和运行一个C程序。 (3)通过运行简单的C程序,初步了解C程序的特点。 (4)在教师的指导下,学会使用在线评判系统。 二、实验内容 1. 运行第一个C程序 [题目:The first C Program] 将下列程序输入visual c++ ,编译、连接和运行该程序。 #include"" main() { printf("The first C Program\n"); } [具体操作步骤] (1)在编辑窗口中输入程序。 (2)保存程序,取名为。 (3)按照第一章中介绍的方法,编译、连接和运行程序。

(4)按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”,则该题完成。 2. 在在线评判系统中提交实现了计算a+b功能的程序 [题目1001:计算a+b] 由键盘输入两个整数,计算并输出两个整数的和。实现该功能的程序如下, #include "" main() { int a, b; scanf("%d%d", &a, &b); printf("%d", a + b); } (1)在程序编辑窗口中输入程序。 (2)保存程序,取名为。 (3)按照前二章中介绍的方法,编译、连接和运行程序。 (4)在程序运行过程中,输入 15 30↙ (↙表示输入回车符) (5)如果看到如下输出结果,则表明15+30 的结果正确,如果得不到如下结果,则需检查并更正程序。 45 (6)按照第三章中介绍的方法进入在线评判系统。 (7)显示题目列表,点击题号为1001,题名为“计算a+b”的题目。 (8)查看完题目要求后,点击页面下端的“sumbit”,参照第二章提交程序的方法提交程序。 (9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检查程序是否正确。 3 实验 2 基本数据类型、运算和表达式 一、实验目的 (1)掌握C语言数据类型,熟悉如何定义一个整型和实型的变量,以及对它们赋值的方法。 (2)掌握不同的类型数据之间赋值的规律。 (3)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运 算符的使用。 (4)进一步熟悉C程序的编辑、编译、连接和运行的过程。 二、实验内容 1. 变量的定义 [题目 1117:变量定义,按要求完成程序] 下面给出一个可以运行的程序,但是缺少部分语句,请按右边的提示补充完整缺少的语句。 #include ""

华南农业大学C语言实验上机实验第四版参考答案

C语言程序设计上机实验指导与习题 参考答案(第四版) (学生改编) 实验 1 C语言程序初步 一、实验目的 (1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。 (2)了解在该系统上如何编辑、编译、连接和运行一个C程序。 (3)通过运行简单的C程序,初步了解C程序的特点。 (4)在教师的指导下,学会使用在线评判系统。 二、实验内容 1. 运行第一个C程序 [题目:The first C Program] 将下列程序输入visual c++ ,编译、连接和运行该程序。 #include"stdio.h" main() { printf("The first C Program\n"); } [具体操作步骤] (1)在编辑窗口中输入程序。 (2)保存程序,取名为 a1.c。 (3)按照第一章中介绍的方法,编译、连接和运行程序。 (4)按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”,则该题完成。

2. 在在线评判系统中提交实现了计算a+b功能的程序 [题目1001:计算a+b] 由键盘输入两个整数,计算并输出两个整数的和。实现该功能的程序如下, #include "stdio.h" main() { int a, b; scanf("%d%d", &a, &b); printf("%d", a + b); } (1)在程序编辑窗口中输入程序。 (2)保存程序,取名为 a2.c。 (3)按照前二章中介绍的方法,编译、连接和运行程序。 (4)在程序运行过程中,输入 15 30↙ (↙表示输入回车符) (5)如果看到如下输出结果,则表明15+30 的结果正确,如果得不到如下结果,则需检查并更正程序。 45 (6)按照第三章中介绍的方法进入在线评判系统。 (7)显示题目列表,点击题号为1001,题名为“计算a+b”的题目。 (8)查看完题目要求后,点击页面下端的“sumbit”,参照第二章提交程序的方法提交程序a2.c。 (9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检查程序是否正确。 3 实验 2 基本数据类型、运算和表达式 一、实验目的 (1)掌握C语言数据类型,熟悉如何定义一个整型和实型的变量,以及对它们赋值的方法。(2)掌握不同的类型数据之间赋值的规律。 (3)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运 算符的使用。 (4)进一步熟悉C程序的编辑、编译、连接和运行的过程。 二、实验内容 1. 变量的定义 [题目 1117:变量定义,按要求完成程序] 下面给出一个可以运行的程序,但是缺少部分语句,请按右边的提示补充完整缺少的语句。#include "stdio.h" main() { int a, b; /*定义整型变量a和b*/

华南农业大学C语言上机实验答案

格式:一题号一答案,相对应 1001 #include "stdio.h" int main() { int a,b; scanf("%d%d",&a,&b); printf("%d",a+b); } 1007 #include "stdio.h" int main() { int a,b; scanf("%d%d",&a,&b); printf("%d",a+b); } 1014 #include"stdio.h" void main() { float area,r; scanf("%f",&r); area=3.14159*r*r; printf("%0.2f",area); } 1015 #include void main() {float f,c; scanf("%f",&f); c=5.0/9*(f-32); printf("%.2f",c); } 1016 #include main() {char a,b,c,d,e; scanf("%c%c%c%c%c",&a,&b,&c,&d,&e); if(a<='Z'&&a>='A')a=a+32;

if(b<='Z'&&b>='A')b=b+32; if(c<='Z'&&c>='A')c=c+32; if(d<='Z'&&d>='A')d=d+32; if(e<='Z'&&e>='A')e=e+32; printf("%c%c%c%c%c",a,b,c,d,e); } 1017 #include "stdio.h" void main() {int n,place; scanf("%ld",&n); if(n>99999999)place=9; else if(n>9999999)place=8; else if(n>999999)place=7; else if(n>99999)place=6; else if(n>9999)place=5; else if(n>999)place=4; else if(n>99)place=3; else if(n>9)place=2; else place=1; printf("%ld\n",place); } 1018 #include main() {int a,b,c,t; scanf("%d,%d,%d",&a,&b,&c); if(a>b){t=a;a=b;b=t;} if(a>c){t=a;a=c;c=t;} if(b>c){t=b;b=c;c=t;} printf("%d,%d,%d",a,b,c); } 1019 #include"stdio.h" main() {int a,b,c,d,e; scanf("%d%d%d%d%d",&a,&b,&c,&d,&e); if(a%27==0)printf("YES\n");else printf("NO\n"); if(b%27==0)printf("YES\n");else printf("NO\n"); if(c%27==0)printf("YES\n");else printf("NO\n"); if(d%27==0)printf("YES\n");else printf("NO\n");

华农C语言题目及答案完整版

[题目6567:The first C Program] 将下列程序输入 visual c++ ,编译、连接和运行该程序。 #includestdio.h main(){printf(The first C Program\n);}答案 #include #include int main(){printf(The first C Program\n); return 0;}[题目1001:计算a+b] 由键盘输入两个整数,计算并输出两个整数的和。 答案 #include #include int main() {int a,b; scanf (%d%d,&a,&b); printf(%d,a+b); return 0;}[题目11126:输出a与b中的较大值] 下面程序实现由键盘输入两个整数a和b,判断并输出a与b中较大值。请在计算机上执行并验证该程序的正确性,之后提交到在线评判

系统。 1 / 26 答案 #include #include int max(int x,int y) {if(x>y)return x; else return y;}int main() {int a,b; scanf(%d%d,&a,&b); printf(%d\n,max(a,b));}[题目1117:变量定义,按要求完成程序] 下面给出一个可以运行的程序,但是缺少部分语句,请按右边的提示补充完整缺少的语句。 #include stdio.h main() { int a, b; /*定义整型变量a和b*/ int i, j; /*定义实型变量i和j*/ a=5; b=6; i= 3.

华农C语言程序设计实验

[题目1118:赋值表达式与赋值语句,写出程序运行结果] 阅读下面程序,写出运行结果: void main() { float a; int b, c; char d, e; a=3.5; b=a; c=330; d=c; 4 e='\\'; printf("%f,%d,%d,%c,%c", a,b,c,d,e); } 运行结果为: 3.500000,3,330,J,\ [提示]赋值语句具有类型转换的功能,但可能会改变数据。 3. 基本运算 [题目1119:基本运算,写出程序运行结果] 阅读下面程序,写出运行结果: void main() { int a, b, c; float d=15, e, f; a=35%7; b=15/10; c=b++; e=15/10; f=d/10; printf("%d,%d,%d,%f,%f,%f", a,b,c,d,e,f); } 运行结果为: 0,2,1,15.000000,1.000000,1.500000 [提示]除法分整除与普通除法之分。 5 [题目1126:字符的输入与输出] 编程实现由键盘输入一个字符后,在屏幕上输出该字符。参考程序: #include "stdio.h" main() { char ch; ch = getchar(); putchar(ch); } [题目1127:计算加法]

编程实现由键盘输入一个加法式,输出正确的结果。(两个加数均为整数)[第一组自测数据] 参考程序: #include "stdio.h" main() { int a, b; scanf("%d%*c%d", &a,&b); printf("%d", a+b); } [题目1014:求圆面积] 参考程序: #include "stdio.h" main() { float area,r; scanf("%f",&r); area=3.14159*r*r; printf("%0.2f",area); } 3 [题目1015:计算摄氏温度值] 参考程序: #include void main() { float f,c; scanf("%f",&f); c=5.0/9*(f-32); printf("%.2f",c); } 4 参考程序: #include "stdio.h" #include "math.h" void main() { float a,b; scanf("%f,%f",&a,&b); if(fabs(a*a+b*b-1)<1e-3) printf("Y\n"); else printf("N\n");} } [题目1017:求数的位数] 参考程序: main() { int n,place; scanf("%ld",&n);

华南农业大学2015上学期C语言A卷试卷及答案

问卷共6页,第7页 华南农业大学期末考试试卷(A 卷) 2015学年第1学期 考试科目: C 语言程序设计 考试类型:(闭卷)考试 考试时间: 120 分钟 学号 姓名 年级专业 1、答案必须分别写在“机读卡”和“答卷”上,写在本试卷上不得分。 2、必须在机读卡和答卷上正确填写班级、学号、姓名等内容,否则没有考试成绩。 3、机读卡的学生代号区只需填写学号后10位。 4、考试结束时,“机读卡”、“答卷”和本试卷都要上交。 一、选择题(在机读卡上答题,本题共20小题,每小题2分,共40分) 1. 请选出其中不合法的常量。( ) A. '8' B. 903u C. 65 D. D 2. C 语言程序中对函数描述正确的是( )。 A. 除了main 函数,函数相互之间可以嵌套定义,嵌套调用 B. 函数不能嵌套定义,除了main 函数,其他函数可以相互调用 C. 函数相互之间可以嵌套定义,嵌套调用,递归调用 D. 函数相互之间可以嵌套调用,但是不能调用自身 3. 以下程序段中表达式的运行结果是( )。 int i=3,j=5; char a='a'; a=a+i,a+j; A. 105 B. 102 C. 73 D. 78 4. 字符串 "\\\tabcd\r\12\n" 在内存中所占的字节数为( )。 A. 14 B. 9 C. 10 D. 11 5. 设有如下变量定义:int i=3,j=5; float x=3.5,y=5.0;请问表达式 i-=j*=x+y 的值是多 少。( ) A. 72 B. -17 C. -39 D. -19 6. 能够实现对字符串 "Dog" 进行正确赋值的操作是( )。 A. char a[3]={ 'D', 'o', 'g'}; B. char a[]="Dog"; C. char a[3]={ "Dog"}; D. char a[3]; s="Dog"; 7. 在以下给出的表达式中,与 while(exp)中的(exp)不等价的表达式是( )。 A .(!exp==0) B .(exp>0||exp<0) C .(exp= =0) D .(exp!=0)

华南农业大学C语言实验上机实验第四

C语言程序设计上机实验指导与习题参考答案 (第四版) (学生改编) 实验1 C语言程序初步 一、实验目的 (1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。(2)了解在该系统上如何编辑、编译、连接和运行一个C程序。(3)通过运行简单的C程序,初步了解C程序的特点。 (4)在教师的指导下,学会使用在线评判系统。 二、实验内容 1.运行第一个C程序 [题目:The first C Program] 将下列程序输入visual c++,编译、连接和运行该程序。 #include"" main() { printf("The first C Program\n"); } [具体操作步骤] (1)在编辑窗口中输入程序。 (2)保存程序,取名为。

(3)按照第一章中介绍的方法,编译、连接和运行程序。 (4)按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”,则该题完成。2.在在线评判系统中提交实现了计算a+b功能的程序 [题目1001:计算a+b] 由键盘输入两个整数,计算并输出两个整数的和。实现该功能的程序如下, #include "" main() { int a, b; scanf("%d%d", &a, &b); printf("%d", a + b); } (1)在程序编辑窗口中输入程序。 (2)保存程序,取名为。 (3)按照前二章中介绍的方法,编译、连接和运行程序。 (4)在程序运行过程中,输入 15 30↙ (↙表示输入回车符) (5)如果看到如下输出结果,则表明15+30的结果正确,如果得不到如下结果,则需检查并更正程序。 45 (6)按照第三章中介绍的方法进入在线评判系统。

华南农业大学C语言程序设计实验指导书参考答案

华南农业大学c语言程序设计上机指导书参考答案上级实验参考答案#include stdio.h #includemath.h int main() { int i; double a, b; for(i=0;i<=100000;++i) {a=sqrt(i+100); b=sqrt(i+168); if((int)a==ceil(a)&&(int)b==ceil(b)) printf(%d\n,i);} } 实验2基本数据类型、运算和表达式 一、实验目的 1)掌握C语言数据类型,熟悉如何定义一个整型和实型的变量,以及对它们赋值的方法。 2)掌握不同的类型数据之间赋值的规。 3)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加++)和自减--)运 算符的使用。 4)进一步熟悉C程序的编辑、编译、连接和运行的过程。

二、实验内容 1 / 56 1.变量的定义 [题目1117:变量定义,按要求完成程序] 下面给出一个可以运行的程序,但是缺少部分语句,请按右边的提示补充完整缺少的语句。 void main() { int a, b;/*定义整型变量a和b*/ int i, j;/*定义实型变量i和j */ a=5; b=6; i=3.14;j=i*a*b; printf(a=%d,b=%d,i=%f,j=%f\n, a, b, i,j); } [具体操作步骤] 1)将代码补充完整; 2)在TC或VC++上运行通过; 3)在JudgeOnline实验系统上提交; 2.赋值表达式与赋值语句 [题目1118:赋值表达式与赋值语句,写出程序运行结果]

阅读下面程序,写出运行结果: voidmain() 2 / 56 {float a; int b, c; char d, e; a=3.5; b=a; c=330; d=c; e='\\'; printf(%f,%d,%d,%c,%c, a,b,c,d,e); } 运行结果为: 3.500000,3,330,J,\ [提示]赋值语句具有类型转换的功能,但可能会改变数据。 3.基本运算 [题目1119:基本运算,写出程序运行结果] 阅读下面程序,写出运行结果: voidmain() {int a, b, c;

华南农业大学C语言程序设计实验指导书参考答案

华南农业大学C语言程序设计实验指导书参考答案

华南农业大学c语言程序设计上机指导书参考答案 上级实验参考答案#include "stdio.h" #include"math.h" int main() { int i; double a, b; for(i=0;i<=100000;++i) {a=sqrt(i+100); b=sqrt(i+168); if((int)a==ceil(a)&&(int)b==ceil(b)) printf("%d\n",i);} } 实验2 基本数据类型、运算和表示式 一、实验目的 1)掌握C 语言数据类型,熟悉如何定义一个整型和实型的变量,以及对它们赋值的方法。 2)掌握不同的类型数据之间赋值的规。 3)学会使用C 的有关算术运算符,以及包含这些运算符的表示式,特别是自加 ++ )和自减 --)运

算符的使用。 4 )进一步熟悉C 程序的编辑、编译、连接和运行的过程。 二、实验内容 1. 变量的定义 [题目1117:变量定义,按要求完成程序] 下面给出一个能够运行的程序,可是缺少部分语句,请按右边的提示补充完整缺少的语句。 void main() { int a, b; /*定义整型变量a 和b*/ int i, j; /*定义实型变量i 和j */ a=5; b=6; i=3.14;j=i*a*b; printf("a=%d,b=%d,i=%f,j=%f\n", a, b, i,j); } [具体操作步骤] 1)将代码补充完整; 2)在TC 或VC++上运行经过;

3)在JudgeOnline 实验系统上提交; 2. 赋值表示式与赋值语句 [题目1118:赋值表示式与赋值语句,写出程序运行结果]阅读下面程序,写出运行结果: void main() { float a; int b, c; char d, e; a=3.5; b=a; c=330; d=c; e='\\'; printf("%f,%d,%d,%c,%c", a,b,c,d,e); } 运行结果为: 3.500000,3,330,J,\ [提示]赋值语句具有类型转换的功能,但可能会改变数据。 3. 基本运算

华农C语言教材习题答案

注:答案仅供参考 分期还款: #include #include int main() { double d, p,r; scanf("%lf%lf%lf",&d,&p,&r); printf("%.1f", log10(p/(p-d*r))/log10(1+r)); return 0; } 计算分段函数函数值: #include int main() { double x; scanf("%lf",&x); if(x<1) printf("%.2f", x); else if(x>=1 && x<10) printf("%.2f", 2*x-1); else printf("%.2f", 3*x-11); } 成绩等级评分: #include #include int main() { int score; scanf("%d", &score); if(score>100 || score<0) printf("error"); else if(score>=90) printf("A"); else if(score>=80) printf("B"); else if(score>=70) printf("C"); else if(score>=60) printf("D"); else printf("E"); return 0; }

20秒后时间: #include #include int main() { int h,m,s; scanf("%d:%d:%d", &h,&m,&s); s=s+20; if(s>59) { s=s%60; m++; if(m>59) { m=m%60; h++; if(h>23) h=0; } } printf("%02d:%02d:%02d\n", h, m, s); return 0; } 分期还款(加强版): #include #include int main() { double d, p,r; scanf("%lf%lf%lf",&d,&p,&r); if(d==0) printf("0.0\n"); else if(d*(1+r)-p>d) printf("God\n"); else { printf("%.1f", log10(p/(p-d*r))/log10(1+r)); } return 0; } 字母分类统计: #include

华农 C语言实验答案

C语言 实验1 6567 #include int main() { printf("The first C Program\n"); } 1001 #include int main() { int a,b; scanf("%d %d",&a,&b); printf("%d",a+b); } 11126 #include int main() { int c,d; scanf("%d %d",&c,&d); if(c>d){d=c;} printf("%d",d); } ---------------------------------------------------- 实验2 1117 int a,b; float i,j; 6568 #include int main() { printf("C:\\ABC.TXT"); } 1119 0,2,1,15.000000,1.000000,1.500000 1118 3.500000,3,330,J,a -------------------------------------------------- 实验3 1126 #include int main() { char __a; scanf("%c",&__a); putchar(__a); } 1127 #include int main() { int x,y; scanf("%d",&x); getchar(); scanf("%d",&y); printf("%d",x+y); } 1014 #include int main() { float rrr; scanf("%f",&rrr); printf("%.2f",rrr*3.14159*rrr); } 1015#include int main() { float _temp; scanf("%f",&_temp); printf("%.2f",(_temp-32)*5/9); } 11127

2015上学期C语言A卷试卷及答案

问卷共6页,第1页 华南农业大学期末考试试卷(A 卷) 2015学年第1学期 考试科目: C 语言程序设计 考试类型:(闭卷)考试 考试时间: 120 分钟 学号 姓名 年级专业 1、答案必须分别写在“机读卡”和“答卷”上,写在本试卷上不得分。 2、必须在机读卡和答卷上正确填写班级、学号、姓名等内容,否则没有考试成绩。 3、机读卡的学生代号区只需填写学号后10位。 4、考试结束时,“机读卡”、“答卷”和本试卷都要上交。 一、选择题(在机读卡上答题,本题共20小题,每小题2分,共40分) 1. 请选出其中不合法的常量。( ) A. '8' B. 903u C. 65 D. D 2. C 语言程序中对函数描述正确的是( )。 A. 除了main 函数,函数相互之间可以嵌套定义,嵌套调用 B. 函数不能嵌套定义,除了main 函数,其他函数可以相互调用 C. 函数相互之间可以嵌套定义,嵌套调用,递归调用 D. 函数相互之间可以嵌套调用,但是不能调用自身 3. 以下程序段中表达式的运行结果是( )。 int i=3,j=5; char a='a'; a=a+i,a+j; A. 105 B. 102 C. 73 D. 78 4. 字符串 "\\\tabcd\r\12\n" 在内存中所占的字节数为( )。 A. 14 B. 9 C. 10 D. 11 5. 设有如下变量定义:int i=3,j=5; float x=3.5,y=5.0;请问表达式 i-=j*=x+y 的值是多 少。( ) A. 72 B. -17 C. -39 D. -19 6. 能够实现对字符串 "Dog" 进行正确赋值的操作是( )。 A. char a[3]={ 'D', 'o', 'g'}; B. char a[]="Dog"; C. char a[3]={ "Dog"}; D. char a[3]; s="Dog"; 7. 在以下给出的表达式中,与 while(exp)中的(exp)不等价的表达式是( )。 A .(!exp==0) B .(exp>0||exp<0) C .(exp= =0) D .(exp!=0)

华南农业大学C语言实验上机实验第四版参考答案

C语言程序设计上机实验指导与习题参考答案(第四版) 实验 1 C语言程序初步 一、实验目的 (1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。 (2)了解在该系统上如何编辑、编译、连接和运行一个C程序。

(3)通过运行简单的C程序,初步了解C程序的特点。 (4)在教师的指导下,学会使用在线评判系统。 二、实验内容 1. 运行第一个C程序 [题目: C ] 将下列程序输入,编译、连接和运行该程序。 "" () { (" C \n"); } [具体操作步骤] (1)在编辑窗口中输入程序。 (2)保存程序,取名为 a1。 (3)按照第一章中介绍的方法,编译、连接和运行程序。 (4)按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”,则该题完成。 2. 在在线评判系统中提交实现了计算功能的程序 [题目1001:计算]

由键盘输入两个整数,计算并输出两个整数的和。实现该功能的程序如下, "" () { a, b; ("", , ); ("", a + b); } (1)在程序编辑窗口中输入程序。 (2)保存程序,取名为 a2。 (3)按照前二章中介绍的方法,编译、连接和运行程序。(4)在程序运行过程中,输入 15 30↙ (↙表示输入回车符) (5)如果看到如下输出结果,则表明15+30 的结果正确,如果得不到如下结果,则需检查并更正程序。 45 (6)按照第三章中介绍的方法进入在线评判系统。 (7)显示题目列表,点击题号为1001,题名为“计算”的题目。(8)查看完题目要求后,点击页面下端的“”,参照第二章提交程序的方法提交程序a2。 (9)查看评判结果,如果得到“”则该题通过,否则返回第一

华南农业大学c语言期末考试试卷

华南农业大学c语言期末考试试卷汇总 华南农业大学期末考试试卷(B卷) 2004学年第1学期考试科目:程序设计 考试类型:(闭卷)考试时间:120 分钟班级学号姓名 考试须知: 1.答案必须写在“答题卡”上,写在试卷上不得分。 2.考试结束时,只回收答题卡,不回收试卷。 3. 必须在答题卡上正确填写班级、学号、姓名等内容,否则没有考试成绩。 一、单项选择题(每小题2分,共30分) 1、下面标识符中,不合法的用户标识符为() A) Pad B) a_10 C) _12ab D) int 2、调用scanf(“%d,%d”,&a,&b);时,正确的键盘输入是() A) 10,20 B) a=10,b=20 C) 10:20 D) 10 20 3、能表示条件0≤x ≤100的表达式是() A) 0<= x <=100 B. x >=0, x<=100 C) 0≤x ≤100 D) x>=0&& x<=100

4、设有:int a=1,b=2,c=3,d=4,m=2,n=2; 执行(m=a>b) && (n=c>d) 后n的值为() A) 0 B) 1 C) 2 D) 3 5、下面不正确的字符串常量是() A) 'abc' B) "12'12" C) "0" D) " " 6、对字符串“Cat”进行完整赋值的操作是() A) char s[3] = {'C', 'a', 't'}; B) char s[] = "Cat"; C) char s[3] = {"Cat"}; D) char s[3]; s= "Cat"; 7、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a 后,a的值是() A) –3 B) 9 C) –12 D) 6 8、设x、y均为整型变量,且x=10,y=3,则以下语句的 输出结果是printf(“%d,%d\n”,x--,--y); () A)10,3 B)9,3 C)9,2 D)10,2 9、在Turbo C中,设inta[10];假设数组a开始于内存2000 单元,则a[2]的存储始于() A) 2002 B) 2004 C) 2006

华南农业大学c语言上机考试题目

1 打印数字空心菱形 Time Limit:1000MS Memory Limit:65536K 题型: 编程题语言: 无限制 描述 由键盘输入n(n为奇数),打印如下图空心菱形 例n=7 1 2 2 3 3 4 4 3 3 2 2 1 输入格式 整数 输出格式 如题 输入样例 3 输出样例 1 2 2 1 作者 Admin 答案: #include #include int main() { int n,i,j; scanf("%d",&n); n/=2; for(i=-n;i<=n;++i) { for(j=0;j<2*n+1-abs(i);++j) { if(j==abs(i)||j==2*n-abs(i)) { printf("%d",n-abs(i)+1); }

else { printf("\040"); } } printf("\n"); } return 0; } 2 两数和为1909 Time Limit:1000MS Memory Limit:65536K 题型: 编程题语言: 无限制 描述 由键盘输入10个整数,编程判断是否存在两个数的和为1909,存在输出Y,不存在输出N 输入格式 10个整数,由空格分隔 输出格式 Y或者N 输入样例 2 1900 42 312 3 31 23 343 213 3 4 9 输出样例 Y 提示 作者 Admin #include #include main() { int a[10]; int i,j; int flag = 0; printf("input ten numbers:\n"); for(i=0;i<10;i++) scanf("%d",&a[i]);

华南农业大学期末考试试卷 C语言考试合集

华南农业大学期末考试试卷(A卷) 2010学年第1学期考试科目:程序设计(C语言) 考试类型:(闭卷)考试考试时间:120 分钟 学号姓名年级专业 题号一二三四总分 得分 评阅人机读机读 考生注意: 1、答案必须分别写在“机读卡”和“答卷”上,写在试卷上不得分。 2、必须在机读卡和答卷上正确填写班级、学号、姓名等内容,否则没有考试成绩。 3、在机读卡的学生代号区只填写学号后10位。 4、考试结束,只需交“机读卡”和“答卷”,本试卷不用交。 得分 一、判断题(在机读卡上答题,每小题1分,共20分) 用2B型铅笔涂答题卡!!!按题号顺序,正确的判断涂黑“A”、错误的判断涂黑“B” 1、能正确表达逻辑关系“0

华南农业大学C语言程序设计实验指导书参考答案

实验2 基本数据类型、运算和表达式 一、实验目的 1)掌握C 语言数据类型,熟悉如何定义一个整型和实型的变量,以及对它们赋值的方法。2)掌握不同的类型数据之间赋值的规。 3)学会使用C 的有关算术运算符,以及包含这些运算符的表达式,特别是自加++ )和自减--)运 算符的使用。 4 )进一步熟悉C 程序的编辑、编译、连接和运行的过程。 二、实验内容 1. 变量的定义 [题目1117:变量定义,按要求完成程序] 下面给出一个可以运行的程序,但是缺少部分语句,请按右边的提示补充完整缺少的语句。 void main() { int a, b; /*定义整型变量a 和b*/ int i, j; /*定义实型变量i 和j */ a=5; b=6; i=3.14;j=i*a*b; printf("a=%d,b=%d,i=%f,j=%f\n", a, b, i,j); } [具体操作步骤] 1)将代码补充完整; 2)在TC 或VC++上运行通过; 3)在JudgeOnline 实验系统上提交; 2. 赋值表达式与赋值语句 [题目1118:赋值表达式与赋值语句,写出程序运行结果] 阅读下面程序,写出运行结果: void main() { float a;

int b, c; char d, e; a=3.5; b=a; c=330; d=c; e='\\'; printf("%f,%d,%d,%c,%c", a,b,c,d,e); } 运行结果为: 3.500000,3,330,J,\ [提示]赋值语句具有类型转换的功能,但可能会改变数据。 3. 基本运算 [题目1119:基本运算,写出程序运行结果] 阅读下面程序,写出运行结果: void main() { int a, b, c; float d=15, e, f; a=35%7; b=15/10; c=b++; e=15/10; f=d/10; printf("%d,%d,%d,%f,%f,%f", a,b,c,d,e,f); } 运行结果为: 0,2,1,15.000000,1.000000,1.500000 [提示]除法分整除与普通除法之分。 实验3 基本输入与输出 一、实验目的 1)熟练掌握putchar、getchar、printf、scanf 函数的使用方法。 2)掌握各种类型数据的输入输出的方法,能正确使用各种格式转换符。

华南农业大学2013学年第1学期程序设计(C语言)期末考试试卷(A卷)

华南农业大学期末考试试卷(A卷)2013学年第1学期考试科目:程序设计(C语言) 考试类型:(闭卷)考试考试时间:120 分钟 学号姓名年级专业 考生注意 1、答案必须分别写在“机读卡”和“答卷”上,写在试卷上不得分。 2、必须在机读卡和答卷上正确填写班级、学号、姓名等内容,否则没有考试成绩。 3、在机读卡的学生代号区只填写学号后10位。 4、考试结束,只需交“机读卡”和“答卷”,本试卷不用交。 一、选择题(在机读卡上答题,本大题共20小题,每小题2分,共40分) 1. 下列关于C语言用户标识符的叙述中正确的是( ) (A) 用户标识符中可以出现在下划线和中划线(减号) (B) 用户标识符中不可以出现中划线,但可以出现下划线 (C) 用户标识符中可以出现下划线,但不可以放在用户标识符的开头 (D) 用户标识符中可以出现在下划线和数字,它们都可以放在用户标识符的开头 2. 一个C程序的执行是从() (A)本程序的main 函数开始,到本程序文件的最后一个函数结束 (B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 (C)本程序的main 函数开始,到main函数结束 (D)本程序文件的第一个函数开始,到本程序main函数结束 3. 设有int i; char c; double f; float e;在如下表达式中结果为整数的是() (A) i*c (B) i+f+e (C) c+f (D) i+c+f 4. 在switch语句中,执行完一个case分支后要是流程跳出switch结构,应使用()语句 (A) continue (B) return (C) else (D) break 5. 调用scanf(“a=%d,b=%d”,&a,&b);时,正确的键盘输入是()

华南农业大学C语言上机实验通过版实验六

实验六 1028 #include int main() { int i,j; for(i=2;i<=200;i++){ for(j=2;j<=200;j++) if(i%j==0) break; if(i==j) printf("%d\n",i); } return 0; } 标程 # include # include main() { int m,k,i; for(m=2;m<=200;m++) { k=sqrt(m); for(i=2;i<=k;i++) if(m%i==0) break; if(i>k) printf("%d\n",m); } } 1035 #include #include int main()

int i,j,k,r,n; scanf("%d",&n); for(i=-n;i<=n;i++){ for(j=1;j<=abs(i);j++){ printf(" "); } for(k=0;k<=n-abs(i);k++) printf("*"); for(r=n-abs(i);r>=1;r--) printf("*"); printf("\n"); } return 0; } 标程 #include "stdio.h" #include "math.h" main() { int n,i,j,k; scanf("%d",&n); for(i=1;i<=2*n+1;i++) { k=abs(n+1-i); for(j=1;j<=k;j++) printf(" "); for(j=1;j<=2*n+1-2*k;j++) printf("*"); printf("\n"); } } 叶建华后来的方法 #include

相关主题
文本预览
相关文档 最新文档