c语言苏小红
A. c语言 苏小红 课后习题 union { int x; struct { char c1; char c2; }b; }a; 执行语句“a.x=0x1234”之后
int x 是4个字节下面的结构体也是四个字节,根据联合体存储数据是相同地址,就得出你说的情况,
B. c语言程序设计第三版苏小红第八章课后实验题
《c语言程序设计学习指导》,去买吧,孩子,我和你一样的需要!
C. “c语言程序设计 苏小红 第三版”这本书的光盘有什么用
它是课堂教学的辅助软件,可以在上完课后观看光盘进行温习。由于c的学习是入门阶段,它的存在可以帮你打好基础,这样在面对实例问题时候知道计算思路,也会理解语言深层的原理。
D. 谁有c语言程序设计苏小红版第8单元课后实验题答案
#include <stdio.h>
#define N 30
int Average(int score[], int n); /* Average()函数原型 */
void ReadScore(int score[], long num[],int n); /* ReadScore()函数原型 */
void DataSort(int score[], long num[], int n);
void PrintScore(int score[], long num[], int n);
void DataNum(int score[], long num[], int n);
void PrintNum(int score[], long num[], int n);
void SearchNum(int score[],long num[],int n);
void Statistics(int score[], int n);
void List(int score[], long num[], int n);
int main()
{
int choice,n,score[N], aver=0,i,sum=0;
long num[N];
do
{
printf("1: Append record\n");
printf("2: Caculate total and average score of course\n");
printf("3: Sort in descending order by score\n");
printf("4: Sort in ascending order by number\n");
printf("5: Search by number\n");
printf("6: Statistic analysisc\n");
printf("7: List record\n");
printf("0: Exit\n");
scanf("%d",&choice);
switch(choice)
{
case 1:printf("Total students are:");
scanf("%d",&n);
ReadScore (score,num,n);
break;
case 2:aver = Average(score, n);
printf("Average score is %d\n",aver);
for (i=0; i<n; i++)
{
sum += score[i];
}
printf("Caculate total score is %d\n",sum);
break;
case 3:DataSort(score,num,n);
printf("Sorted scores :\n");
printf(" number: score: \n");
PrintScore(score,num,n);
break;
case 4:DataNum(score,num,n);
printf("Sorted number :\n");
printf(" number: score: \n");
PrintNum(score,num,n);
break;
case 5:SearchNum(score,num,n);
break;
case 6:Statistics(score, n);
break;
case 7:List(score,num,n);
break;
case 0:break;
}
}while(choice!=0);
return 0;
}
/* 1、函数功能:输入n个学生的学号及某门课成绩 */
void ReadScore(int score[], long num[],int n)
{
int i;
for(i=0;i<n;i++)
{
printf("Input student's ID and score:");
scanf("%ld%d",&num[i],&score[i]);
}
}
/* 2、函数功能:计算课程的总分和平均分 */
int Average(int score[], int n) /* Average()函数定义 */
{
int i, sum = 0;
for (i=0; i<n; i++)
{
sum += score[i];
}
return sum / n;
}
/* 3、函数功能:成绩由高到低排序 */
void DataNum(int score[], long num[], int n)
{
int i,j,k,temp1;
long temp2;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
{
if (score[j]>score[k])
{
k=j;
}
}
if(k!=i)
{
temp1=score[k];score[k]=score[i];score[i]=temp1;
temp2=num[k];num[k]=num[i];num[i]=temp2;
}
}
}
/* 函数功能:显示排序后学生学号和成绩 */
void PrintNum(int score[], long num[], int n)
{
int i;
for(i=0;i<n;i++)
{
printf(" %10ld %4d\n",num[i],score[i]);
}
}
/* 4、函数功能:学号由小到大排序 */
void DataSort(int score[], long num[], int n)
{
int i,j,k,temp1;
long temp2;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
{
if (num[j]<num[k])
{
k=j;
}
}
if(k!=i)
{
temp1=num[k];num[k]=num[i];num[i]=temp1;
temp2=score[k];score[k]=score[i];score[i]=temp2;
}
}
}
/* 函数功能:显示排序后学生学号和成绩 */
void PrintScore(int score[], long num[], int n)
{
int i;
for(i=0;i<n;i++)
{
printf(" %10ld %4d\n",num[i],score[i]);
}
}
/* 5、函数功能:按学号查询学生排名及其成绩*/
void SearchNum(int score[],long num[],int n)
{
long number;
int i;
printf("Please input the number you want to search:");
scanf("%ld",&number);
for(i=0;i<n;i++)
{
if(num[i]==number)
{
printf(" %ld %d\n",num[i],score[i]);
return;
}
}
printf("\nNot found!\n");
}
/* 6、函数功能:统计个人类别的人数以及所占的百分比*/
void Statistics(int score[], int n)
{
int i,a=0,b=0,c=0,d=0,e=0;
for(i=0;i<n;i++)
{
if(score[i]>=90)
{
a++;
}
else if(score[i]>=80)
{
b++;
}
else if(score[i]>=70)
{
c++;
}
else if(score[i]>=60)
{
d++;
}
else
{
e++;
}
}
printf("优秀人数:%d\t占:%.3f%%\n良好人数:%d\t占:%.3f%%\n中等人数:%d\t占:%.3f%%\n及格人数:%d\t占:%.3f%%\n不及格人数:%d\t占:%.3f%%\n",a,(float)100*a/n,b,(float)100*b/n,c,(float)100*c/n,d,(float)100*d/n,e,(float)100*e/n);
}
/* 7、函数功能:输入学生学号、成绩、总分、平均分*/
void List(int score[], long num[], int n)
{
int i, j=0;
for(i=0;i<n;i++)
{
printf("学号:%ld\t考试成绩:%d\n",num[i],score[i]);
j+=score[i];
}
printf("课程总分:%d\n平均分:%.3f\n",j,(float)j/n);
}
E. c语言程序设计苏小红版第七章课后实验答案
不知道你说的是不是这一次实验
2.2.7实验7:二维数组和函数综合编程练习
成绩排名次
某班期末考试科目为数学(MT)、英语(EN)和物理(PH),有最多不超过30人参加考试。考试后要求:
(1)计算每个学生的总分和平均分;
(2)按总分成绩由高到低排出成绩的名次;
(3)打印出名次表,表格内包括学生编号、各科分数、总分和平均分;
(4)任意输入一个学号,能够查找出该学生在班级中的排名及其考试分数。
【思考题】请读者思考如下问题。
①如果增加一个要求:要求按照学生的学号由小到大对学号、成绩等信息进行排序,那么程序如何修改呢?
②如果要求程序运行后先打印出一个菜单,提示用户选择:成绩录入、成绩排序、成绩查找,在选择某项功能后执行相应的操作,那么程序如何修改呢?
答案
#include <stdio.h>
#define STU 30
#define COURSE 3
void 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 ");
Input(num, score, n); /*输入学生成绩*/
GetSumAver(score, n, sum, aver); /*计算总分和平均分*/
printf("Before sort: ");
Print(num, score, n, sum, aver);
Sort(num, score, n, sum, aver); /*排名次*/
printf("After sort: ");
Print(num, score, n, sum, aver);
printf("Please enter searching number:");
scanf("%ld", &x); /*以长整型格式输入待查找学生的学号*/
pos = Search(num, n, x); /*名次查询*/
if (pos != -1)
{
printf("position: NO MT EN PH SUM AVER ");
printf("%8d %4ld %4d %4d %4d %5d %5.0f ",
pos+1,num[pos], score[pos][0],score[pos][1],
score[pos][2], sum[pos],aver[pos]);
}
else
{
printf("Not found! ");
}
}
/* 函数功能:输入某班学生期末考试三门课程成绩
函数参数:长整型数组num,存放学生学号
整型数组score,存放学生成绩
整型变量n,存放学生人数
函数返回值:无
*/
void Input(long num[], int score[][COURSE], int n)
{
int i, j;
for (i=0; i<n; i++)
{
scanf("%ld", &num[i]);
for (j=0; j<COURSE; 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; i<n; i++)
{
sum[i] = 0;
for (j=0; j<COURSE; 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; i<n-1; i++)
{
k = i;
for (j=i+1; j<n; 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; m<COURSE; 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 | MT EN PH SUM AVER ");
printf("---------------------------------------------------- ");
for (i=0; i<n; i++)
{
printf("%ld | ", num[i]);
for (j=0; j<COURSE; j++)
{
printf("%4d ", score[i][j]);
}
printf("%5d %5.0f ", sum[i], aver[i]);
}
}
/* 函数功能:在学号数组中顺序查找学生的学号
函数参数:长整型数组num,存放学生学号
整型变量n,存放学生人数
长整型变量x,存放待查找学生的学号
函数返回值:找到时,返回学生学号在学号数组中的下标位置,否则返回值-1
*/
int Search(long num[], int n, long x)
{
int i;
for (i=0; i<n; i++)
{
if (num[i] == x) return(i);
}
return (-1);
}
F. c语言程序设计苏小红第四版和谭浩强有什么区别
特点不同。
特点不同:C程序设计谭浩强版本的第四版比较简单被普遍认为是学习C语言的好教材,并被全国大多数高校选用。苏小红设计的第四版比较困难该教材兼具趣味性和实用性,以应用为背景,面向编程实践和问题求解能力的训练,从实际问题出发,在案例的不断深化中逐步引出知识点,形成程序设计方法由自底向上到自顶向下和数据结构由简单到复杂的两条逻辑清晰的主线。
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。
G. c语言程序设计苏小红和谭浩强版区别
1、C程序设计谭浩强版本的第四版:内容先进,体系合理,概念清晰,讲解详尽,降低台阶,分散难点,例题丰富,深入浅出,文字流畅,通俗易懂,是初学者学习C程序设计的理想教材,可作为高等学校各专业的正式教材。
2、C程序设计谭浩强版本的第三版:累计发行了700多万册,创同类书的全国最高记录,是学习C语言的主流用书。C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发,C语言能以简易的方式编译、处理低级存储器。
H. 求C语言程序设计学习指导(苏小红) 第3版.pdf
中文名:C语言程序设计
作者:吴国凤
图书分类:科技
资源格式:PDF
版本:高清文字版
出版社:合肥工业大学出版社
书号:9787565008405
发行时间:2012年8月1日
地区:大陆
语言:简体中文
本书是高清文字版.非扫描.拒绝模糊.享受清晰!
无法下载的用户请到评论区一楼查看网盘地址!
内容介绍:
本文章由第1章 C语言概述、第2章 数据类型、运算符与表达式等组成。
内容截图:
目录:
第1章 C语言概述10
1.1 程序设计与C语言10
1.2 C程序初识12
1.3 程序设计方法与算法16
1.4 C程序运行环境与学习方法20
1.5 例题精解24
1.6 本章小结25
习题25
第2章 数据类型、运算符与表达式27
2.1 C语言基础27
2.2 常量30
2.3 变量32
2.4 基本运算符与表达式33
2.5 不同数据类型间的转换和运算39
2.6 例题精解41
2.7 本章小结42
习题43
第3章 顺序结构程序设计45
3.1 C语言中的语句45
3.2 数据的输入输出47
3.3 例题精解54
3.4 本章小结57
习题57
第4章 选择结构程序设计62
4.1 关系运算和逻辑运算62
4.2 if语句65
4.3 switch语句70
4.4 例题精解72
4.5 本章小结75
习题75
第5章 循环结构程序设计80
5.1 概述80
5.2 while语句80
5.3 dowhile语句82
5.4 for语句84
5.5 循环嵌套88
5.6 break语句、continue语句和goto语句与标号90
5.7 例题精解92
5.8 本章小结97
习题97
第6章 数组105
6.1 一维数组105
6.2 二维数组108
6.3 字符数组和字符串112
6.4 例题精解117
6.5 本章小结121
习题122
第7章 指针126
7.1 指针的基本概念126
7.2 指针与数组133
7.3 指针数组和指向指针的指针142
7.4 例题精解147
7.5 本章小结149
习题150
第8章 函数154
8.1 函数的基本概念154
8.2 函数参数和函数的值155
8.3 函数的调用157
8.4 数组作为函数参数158
8.5 指针作为函数参数161
8.6 嵌套调用与递归调用163
8.7 存储类型166
8.8 命令行参数170
8.9 例题精解171
8.10 本章小结175
习题175
第9章 编译预处理181
9.1 宏定义181
9.2 文件包含184
9.3 条件编译185
9.4 例题精解186
9.5 本章小结188
习题189
第10章 结构体与共用体192
10.1 结构体192
10.2 共用体208
10.3 枚举211
10.4 用户定义类型212
10.5 例题精解213
10.6 本章小结214
习题215
第11章 位运算219
11.1 位运算的概念219
11.2 位运算219
11.3 位域(位段)223
11.4 本章小结226
习题226
第12章 文件228
12.1 文件概念228
12.2 文件指针229
12.3 文件的打开与关闭230
12.4 文件的读写231
12.5 文件的定位操作238
12.6 文件的错误检测240
12.7 本章小结241
习题241
附录243
1. 常用字符与ASCII代码对照表243
2. C语言运算符的优先级与结合性244
3. C库函数245
4. 常见错误信息表252
下载地址:
I. 求c语言程序设计第二版(苏小红)课后第五章的本章实验题答案
《03 00 C语言 全59讲 主讲-苏小红 哈尔滨工业大学》网络网盘资源免费下载
链接: https://pan..com/s/1YAxqTBta2f0LJoGW2eytGw
03 00 C语言 全59讲 主讲-苏小红 哈尔滨工业大学|各学科 学习视频目录|1-30讲|课程目录.txt|C语言哈工大教材 苏小红.jpg|9.flv|8.flv|7.flv|6.flv|5.flv|4.flv|30.flv|3.flv|29.flv|28.flv