西南大学0039c语言作业答案,西南大学17秋[0039]C语言作业答案.doc-资源下载在线文库www.lddoc.cn...

本文探讨了西南大学17秋C语言课程中的关键概念,涉及字符指针运算、输入验证、数组排序算法、函数设计,以及算法的描述方法。内容涵盖了字符数组处理、数值运算表达式解析、算法理解与实现,以及程序设计语言与算法的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

西南大学17秋[0039]《C语言》作业答案.doc

1 1假定假定 p1p1 和和 p2p2 是已赋值的字符型指针,则下述有关运算中,非法的是(是已赋值的字符型指针,则下述有关运算中,非法的是( 1. p2p1p1-p2; printf“equal.“; 2. .if p1 p2 3. .*p1-2p2getchar ; 4. *p12*p2 2 2、循环语句、循环语句 for x0,y0;y123xinclude define SQRXdefine SQRX X*XX*X void mainvoid main int a10,k2,m1;int a10,k2,m1; a/SQRkm/SQRkm;a/SQRkm/SQRkm; printf“d“,a; printf“d“,a; 1. 10 2. 1 3. 9 4. 0 1111有如下程序,输入数据有如下程序,输入数据 1234512345后,后,y y 的值是(的值是( )。)。 include include void mainvoid main int x;int x; float y;float y; scanf“3df“,scanf“3df“, 1. 12.000000 2. 45.000000 3. 12345.000000 4. 0.000000 1212若有如下程序,要求若有如下程序,要求 a1,a2,c1,c2a1,a2,c1,c2 的值分别为的值分别为 10102020A AB B,正确的数据,正确的数据 输入是(输入是( )。)。 include include void mainvoid main int a1,a2;int a1,a2; char c1,c2;char c1,c2; scanf“dd“,scanf“dd“, scanf“cc“,scanf“cc“, brbint a10,i,max; fori0;iamaxifaiamax 2 2 printf“printf“最大值为最大值为dd ,下标,下标 是是d“,d“, 3 3 ,max;,max; 参考答案参考答案 i1,max0 或 maxi0;maxi; amax 3939设设 int m3int m3float n12.6float n12.6char chchar cha a;,若用输入语句实现上述三;,若用输入语句实现上述三 个变量的初始化结果且键入数据形式为个变量的初始化结果且键入数据形式为3 312.6a ,则,则 scanfscanf 语句语句 应是应是_ _ 参考答案参考答案 scanf“d,fc“, fori1;i0;i printf“c“,chi; main f; 5454 参考答案参考答案 1. abc_。 6. extern。 7. _6 8. (1) a0 2suma _ _(3)sum/n _; 9. (1)i1,max0 或 maxi0 (2) maxi; 3 amax 10、 (1)return 1; (2)fai (3)aj (3)则输出结果为最高成绩为97,最高成绩是第 7 个 5555 下列表达式的值是多少处理表达式后,下列表达式的值是多少处理表达式后, a a 的值是多少的值是多少, ,假设整数类型变量假设整数类型变量 a a 的值为的值为 1212 1aa1aa 22 aa- -22 3a*233a*23 4a4a /aa/aa 5an25an2 n n 的值等于的值等于 5 5 6aa6aa- -a*aa*a 参考答案参考答案 表达式计算 1表达式 aaa 的值是 24处理表达式后, a 的值是 24 2表达式 aa-2 的值是 10 处理表达式后, a 的值是 10 3表达式 aa*23的值是 60 处理表达式后, a 的值是 60 4表达式 aa/aa的值是 0,处理表达式后, a 的值是 60 5 表达式 an2的值是 0,处理表达式后, a 的值是 12 6 表达式 aa-a*a 的值是-264,处理表达式后, a 的值是-264 5656请简述算法、程序设计语言与程序的区别与联系请简述算法、程序设计语言与程序的区别与联系 参考答案参考答案 区别算法(Algorithm)就是对解决某问题所采用的方法和步骤的描述。程序 设计语言设计上就是一组符号及规则的集合。它是由语法、语义、语用三个要 素组成。 一个程序一般包括数据类型和算法两个方面的内容。 其中数据类型 (即 数据结构)是对程序中的数据进行描述,指定数据在程序中的类型和数据的组 织形式,它决定了数据的在内存中所占的存储空间和数据在内存中存放形式。 而算法是对程序中数据的操作描述,是解决“做什么”和“怎么做”的问题, 源程序中的操作语句就是算法的体现。 正如著名计算机科学家沃思 (Nikiklaus Wirth)所提出的观点程序数据结构算法。 联系程序设计语言是编写程序实现算法的语言工具 5757什么是算法算法的特征算法的描述方法有哪些什么是算法算法的特征算法的描述方法有哪些 参考答案参考答案 所谓算法(Algorithm)就是对解决某问题所采用的方法和步骤的描述。 一个算法应该具有以下特点 (1)确定性一个算法给出的每个计算步骤都必须是准确的、无二义性。 在【例 1.6】中每一个步骤的含义都是确定的。 (2)有穷性一个算法必须在执行有穷多个计算步骤后终止。在【例 1.6】 中执行 4 个步骤后问题处理结束。 (3)有效性算法中的每一个步骤必须能够有效地执行,并能够得到确定 的结果。 (4)输入一个算法可以有 0 个或 1 个以上的输入。在【例 1.6】中需要 输入 a,b,c 三个数。 (5)输出一个算法有 1 个或多个的输出,一个算法得到的结果就 是算法的输出。在 算法的描述方法有 自然语言、流程图、N-S 图等。 5858 4.4.写出下列表达式所对应的写出下列表达式所对应的 C C 语言表达式语言表达式, ,其中其中 x,yx,y 为整数,为整数,a,b,ca,b,c 为实数类型为实数类型 内容见附件内容见附件写写 C C 语言表达式语言表达式 参考答案参考答案 1x*x-3.0*x*y/(2-y) 2sqrt(fabs(a*b-c*c 3sqrtabsa*b-c*c*cosx/a 41sqrtx/1-y/x 5cosxsqrt3*a*b /2-y 6sqrtabsa*b-c*c*sinx/b 5959在下列程序中,函数在下列程序中,函数 f f 的功能是什么的功能是什么 该程序的运行结果是多少该程序的运行结果是多少 include “stdio.h“include “stdio.h“ int funint numint funint num int k1;int k1; dodo k*num10;k*num10; num/10;num/10; whilenum0;whilenum0; return k;return k; int mainint main int x651,y123;int x651,y123; printf“d,d“,funx,funy;printf“d,d“,funx,funy; 参考答案参考答案 函数 f 的功能是求任意整数的各位数字之积, 该程序的运行结果是 15,6 6060在下列程序中,函数在下列程序中,函数 p p 的功能是什么的功能是什么 该程序的运行结果是多少该程序的运行结果是多少 include “stdio.h“include “stdio.h“ voidvoid sortint x ,int n sortint x ,int n int i,j,k,t;int i,j,k,t; fori0;ixjkj;ifxkxjkj; ifikifik txk;xkxi;xit;txk;xkxi;xit; int main int main int a1034,50,89,67,102,11,75,30,125,145,i;int a1034,50,89,67,102,11,75,30,125,145,i; sorta,10;sorta,10; fori0;i0;whilen0; printf“dprintf“d, s;, s; 参考答案参考答案 参考答案 include “stdio.h” int add(int n) int r,s0; dorn10; sr; nn/10; whilen0; returns; void main() int m; scanf“d”, printf“d”, addm; 6464有如下程序有如下程序 include “stdio.h“include “stdio.h“ intint funintfunint xx int int p;p; ififx0 x1x0 x1 return 3;return 3; elseelse pxpx- -funxfunx- -2;2; returnreturn p;p; intint mainmain printf“ d“,fun9; printf“ d“,fun9; 该程序的输出结果是多少该程序的输出结果是多少 参考答案参考答案 该程序的输出结果是 7 6565下列函数的功能是什么下列函数的功能是什么 int funchar *xint funchar *x char *yx;char *yx; while*y;while*y; return yreturn y- -x x- -1 1 参考答案参考答案 函数的功能是求字符串的长度 6 66 6什么是指针,什么是指针变量指针所指向的变量给一实例说明什么是指针,什么是指针变量指针所指向的变量给一实例说明 参考答案参考答案 指针就是一个变量的地址 指针变量有一个变量专门用来存放另一变量的地址(即指针)。 如果将一个变量的地址(指针)赋给同一类型的指针变量,则该变量为指 针变量所指向的变量。 如 int x10,*p 则整数变量 x 的值为 10,指针变量为 p,指针所指向的变量为*p. 6767、从键盘上任意输入、从键盘上任意输入 2020 个个 2 2 位或位或 3 3 位整数存放在位整数存放在 arrayarray 数组中,找出数组中,找出 arrayarray 数组中的能够被数组中的能够被 7 7 整除的数存放在数组整除的数存放在数组 b b 中,并对中,并对 b b 数组的数组的值按升序排列。值按升序排列。 要求要求 a a)编写一个)编写一个 sortsortint word,int aint word,int a)函数实现排序功能)函数实现排序功能 b b)除)除 sortsort 函数外,其余在主函数内完成,但主函数必须调用函数外,其余在主函数内完成,但主函数必须调用 sortsort 函数实现函数实现 排序功能。排序功能。 c c)程序必须有输入输出提示。)程序必须有输入输出提示。 参考答案参考答案 include “stdio.h“ void sortint a,int n int i, j, t; for i 0;i aj 1 t aj; aj aj 1; aj 1 t; printf“排序以后的数“; for i 1;i include void main double x, y,result; printf“请分别输入 x,y 的值“; scanf“lflf“, result x*x y*y sinx; printf“函数 f.0lf,.0lf.3lfn“, x, y, result; 7070输出输出 100-900 之间的所有奇数,并求出这些奇数的平均值输出之间的所有奇数,并求出这些奇数的平均值输出 参考答案参考答案 include “stdio.h“ void main int x, sum 0, count 0; for x 100;x 1n“; scanf“d“, funn; 7272输出输出 1-500 之间的所有偶数,并求出这之间的所有偶数,并求出这些偶数的平均值输出。些偶数的平均值输出。 参考答案参考答案 include“stdio.h” void main int x, sum 0, count 0; for x 1;x 1n“; scanf“d“, funn; 7676、写一个函数将一个字符串中的大写字母转换为小写,再写一个测试函数测、写一个函数将一个字符串中的大写字母转换为小写,再写一个测试函数测 试其功能。不允许使用试其功能。不允许使用 strlwrstrlwr 函数函数 参考答案参考答案 include “stdio.h“ void convertchar *str for int i 0; stri 0A ifaiamax maxi; printf“printf“最大值为最大值为d,d,最大值下标是最大值下标是dd n“ ,amax,max1;n“ ,amax,max1; 1 1 所提供程序中,函数所提供程序中,函数 averaver 的功能是什么的功能是什么 2 2)请依据提供上述程序,画出其的传统流程图或)请依据提供上述程序,画出其的传统流程图或 N N- -S S 图或自然语言描述图或自然语言描述 3 3)若输入的数据分别为)若输入的数据分别为45,87,89,90,77,88,88,78,78,7845,87,89,90,77,88,88,78,78,78,则在,则在 VC6.0VC6.0 环环 境下运行上述程序,其输出结果是什么境下运行上述程序,其输出结果是什么 参考答案参考答案 1求 m 个数的平均值 2依据考生答题评定成绩 3平均分 80 最大值为90,最大值下标是4 7979依据下列提供的程序回答问题依据下列提供的程序回答问题 include “stdio.h“include “stdio.h“ include “math.h“include “math.h“ int fint xint fint x int i;int i; fori2;i a int main char str20 “aZcdABxDEF123“; convertstr; printf“sn“, str; return 0; 8181利用随机函数产生利用随机函数产生 2020 个个 100100- -300300 的随机整数放的随机整数放入数组入数组 a a 中,从键盘输入查中,从键盘输入查 找关键字找关键字 wordword 是否在数组是否在数组 a a 中。中。 要求要求 1 1)编写一个函数)编写一个函数 findfindint word,int aint word,int a)查找关键字)查找关键字 wordword 是否在数组是否在数组 a a 中中 2 2)主函数中产生随机整数,并调用)主函数中产生随机整数,并调用 findfind 函数进行测试。函数进行测试。 3 3)程序必须有相应的输入输出提示。)程序必须有相应的输入输出提示。 参考答案参考答案 include “stdio.h“ include “stdlib.h“ void findint word, int a for int i 0;i 20;i ifwordai printf“找到关键字 word,它在数组中的位置是d“,i; else printf“没有找到关键字 wordn“; int main int a20; int word; int i; srandtime0; for i 0;i 20;i ai rand 201 100; printf“请输入关键字 word“; scanf“d“, findword, a; return 0; 8282编写程序打印下列图案编写程序打印下列图案 参考答案参考答案 include “stdio.h“ void main for int i 0;i 4;i for int j 0;j i;j printf“d“,j1; printf“n“;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值