C语言编程100题-西安交通大学-大学计算机基础-网上编程试题+答案
文章平均质量分 73
本专栏收录西安交通大学(适用专业:工科试验班-机类等)大学计算机基础课程(C语言)所有网上编程试题与代码答案,读者可直接将代码复制到教师的批改系统并提交,所有答案经测试均已编译通过。内写有详细的注释,旨在帮助C语言入门者通过阅读例题巩固知识。
亦广泛适用所有C语言初学者。
CloudBud
这个作者很懒,什么都没留下…
展开
-
西安交通大学-大学计算机基础-网上编程题目+答案(C语言-机类)
说明:第5周第1题对应了C语言编程100题-1.1,以此类推C语言编程100题-1.1C语言编程100题-1.2C语言编程100题-1.3C语言编程100题-1.4C语言编程100题-1.5C语言编程100题-1.6C语言编程100题-1.7C语言编程100题-2.1C语言编程100题-2.2C语言编程100题-2.3C语言编程100题-2.4C语言编程100题-2.5C...原创 2019-05-21 17:13:02 · 27642 阅读 · 8 评论 -
迎接数据主义时代的到来
自诩:博主是一名极富创造性、推陈出新、热爱思考,然而成绩并非拔尖的学生。起初本人在CSDN上撰写博客,纯粹是个人兴趣不断燃烧的结果,你所窥见即那兴趣留下的煴焰罢了。从编程、优化代码排版、整理代码与题目、编写必要的注释、文章撰写与发布到博客目录的制作,博主也算是煞费苦心、筋疲力尽。其实我从未想过利用这些文章赚取拳拳小利,尽管我对外宣称将利用这些文章来“薄利多销”。也许你会好奇,为什么我要辛辛苦苦...原创 2019-05-21 18:06:17 · 1243 阅读 · 6 评论 -
C语言编程100题-8.2
8.2利用字符栈检查表达式的括号是否匹配。提示:从左向右扫描表达式,遇到“(”进栈,遇到“)”出栈,扫描完表达式后,若栈空,表示括号匹配。否则,(1)当扫描完表达式后棧不空,可断定括号是不匹配的(2)表达式未扫描完,需要出棧时棧是空的,此时可断定括号是不匹配的。测试样例:如输入:(a+b)(5+c)((22-c)/23+56)则输出:括号匹配!或输入:2+(5+8))输...原创 2019-05-29 22:01:49 · 3029 阅读 · 0 评论 -
C语言编程100题-8.1
8.1利用顺序栈将十进制整数转换为二进制数。要求:至少实现以下操作:置空栈、入栈、出栈,计算表长。输入输出样例:输入为:30输出:表长:5二进制:11110样例输入:32样例输出:表长:6二进制:100000#include <stdio.h>#include <math.h>int main(){ int n; scanf...原创 2019-05-29 22:00:31 · 3410 阅读 · 0 评论 -
C语言编程100题-7.3
7.3创建一个链式存储结构(链表),并实现其基本操作(如插入,查找,删除,输出等)。应用该链表,将键盘输入的一行字符插入表中,然后输出表中所有字符及表长;再输入一个字符,从表中删除该字符(重复出现应进行多次删除),最后再次输出表中所有字符及表长。输入为:ABCBBDEF 12XYZBA则输出为:ABCBBDEF 12XYZBA16再输入:B则输出为:ACDEF 12XYZA1...原创 2019-05-29 21:58:13 · 3195 阅读 · 0 评论 -
C语言编程100题-7.2
7.2创建一个字符线性表(顺序表),并实现其基本操作(如插入,查找,删除,输出等)。应用该线性表,将键盘输入的一行字符插入表中,然后输出表中所有字符及表长;再输入一个字符,从表中删除该字符(重复出现应进行多次删除),最后再次输出表中所有字符及表长。输入为:ABCBBDEF 12XYZBA则输出为:ABCBBDEF 12XYZBA16再输入:B则输出为:ACDEF 12XYZA...原创 2019-05-29 21:55:58 · 4071 阅读 · 0 评论 -
C语言编程100题-6.7
6.7有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。 数据输入: 输入表示若干种石子的初始情况,包含两个非负整数 a 和 b ,表示两堆石子的数目,...原创 2019-05-29 21:54:18 · 2843 阅读 · 0 评论 -
C语言编程100题-6.6
Given a sequence of K integers { N1, N2, …, NK }. A continuous subsequence is defined to be { Ni, Ni+1, …, Nj } where 1 <= i <= j <= K. The Maximum Subsequence is the continuous subsequence w...原创 2019-05-29 21:52:29 · 2425 阅读 · 0 评论 -
C语言编程100题-8.8
8.8定义一个含20个元素的整型数组并初始化为a[]={1,2,3,4,5,6,7,8,9,10}。另外定义一个大小为10的整型数组b。要求:输入整数n(1<=n<=10),然后输入n个整数存入b中,再输入一个整数k(1<= k <=10),将数组b中的n个元素依次插入到数组a中从第k位开始的地方,插入完成后,输出数组a(元素间用空格隔开)。样例输入:313 14...原创 2019-05-15 15:21:49 · 2757 阅读 · 0 评论 -
C语言编程100题-8.7
8,7定义包含5个英文单词的字符数组(即二维字符数组),键盘输入5个单词,按字典顺序寻找最大和最小单词并输出。如输入:mondaytuesdaythursdayfridayJanuar则输出:max:tuesdaymin:friday#include <stdio.h>#include <string.h>int main(){ c...原创 2019-05-15 15:21:45 · 5437 阅读 · 0 评论 -
C语言编程100题-8.5
8.5输入两个整型数组(假设数组的大小为不超过10)的各个元素,输出不是两个数组共有的元素,并从小到大排序输出。输入: 2个数组的元素(小于10个),数组中第一个数据指示元素的个数输出:非共有的元素,从小到大排序样例:输入:7 1 2 3 4 5 6 76 5 6 7 8 9 0输出:0 1 2 3 4 8 9#include<stdio.h>/*编这道题真的和打...原创 2019-05-15 15:21:32 · 3438 阅读 · 0 评论 -
C语言编程100题-7.8
7.8输入两个正整数,输出其中最大公约数和最小公倍数。求p和q的最大公约数的欧几里德算法:(1)输入p和q(p>q)(2)计算p和q的余数r(3)r=0时,q即为最大公约数,转第(4)步否则,令p=q,q=r,继续执行第(2)步(4)输出qp和q的最小公倍数为p乘以q再除以它们的最大公约数。如输入:15,25则输出:最大公约数是5最小公倍数是75样例输入:5,...原创 2019-05-15 15:21:29 · 2491 阅读 · 0 评论 -
C语言编程100题-7.7
7.7在随机产生的n个整数的一维数组中删除所有的最小数。编程要求:n从键盘输入,n<100;随机整数的范围[0,20],用输入的n作为随机函数的“种子数”。如输入:16则输出(所有的随机数,最小数和删除后的数)6,20,15,17,10,17,7,10,17,13,1,14,6,1,2,1min=16,20,15,17,10,17,7,10,17,13,14,6,2样例输入:...原创 2019-05-15 15:21:25 · 2724 阅读 · 0 评论 -
C语言编程100题-7.5
7.5一个数组A中存有n(n>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移m(m>=0)个位置,即将A中的数据由(A0 A1……An-1)变换为(An-m …… An-1 A0 A1……An-m-1)(最后m个数循环移至最前面的m个数)。输入n ( 1<=n<=100)、m(m>=0)及n个整数,输出循环右移m位以后的整数序列。例如:输入:第...原创 2019-05-15 15:21:23 · 2916 阅读 · 0 评论 -
C语言编程100题-7.4
7.4编写字符串反转函数mystrrev,该函数的功能为将指定字符串中的字符顺序颠倒排列。然后再编写主函数验证之。函数原型为 void mystrrev(char string[]) 程序运行结果如下:输入:任意1字符串,可能含有空格输出:逆序后的字符串样例:输入:Hello,everyone输出:enoyreve,olleH样例输入:123 456 7890样例输出:09...原创 2019-05-15 15:21:08 · 5003 阅读 · 0 评论 -
C语言编程100题-7.1
7.1定义包含学号、姓名和成绩的学生信息结构类型,完成以下功能:(1)键盘输入n个学生信息数据(n从键盘输入);(2)使用“冒泡法”对学生成绩由高到低排序;(3)输出排序后学生信息。输入输出样例如下,数据间以空格分隔。输入:3100001 wang-li 91100002 chen-da-wei 95100003 guo-tao 93输出为:100002 chen-da-w...原创 2019-05-15 15:21:05 · 1683 阅读 · 0 评论 -
C语言编程100题-6.3
6.3编写一个函数,从传入的一个字符串中找出一个最长的一个子字符串, 输出该子字符串。假设各个子串以回车作为结束符,空格为分隔符。输入:Life is not a problem to be solved but a reality to be experienced输出:experienced样例输入:Life is not a problem to be solved but a...原创 2019-05-15 15:20:56 · 912 阅读 · 0 评论 -
C语言编程100题-5.8
5.8Given N rational numbers in the form “numerator/denominator”, you are supposed to calculate their sum.Input Specification: Each input file contains one test case. Each case starts with a positive...原创 2019-05-15 15:20:48 · 2761 阅读 · 0 评论 -
C语言编程100题-5.7
5.7改进冒泡排序程序,使其当数据已经有序时,直接结束排序过程。函数原型:void Bubble(int *a,int n);//对n个整数从小到大排序在主函数中调用Bubble对键盘输入的m个整数进行排序并输出。其中m个元素的整型数组p可以动态申请,如 int *p=(int *)calloc(m,sizeof(int));测试样例如下:如输入:1087 66 92 85 62 ...原创 2019-05-15 15:20:39 · 2766 阅读 · 0 评论 -
C语言编程100题-5.6
5.6输入一行数字,如果我们把这行数字中的‘5’都看成空格,那么就得到一行用空格分割的若干非负整数(可能有些整数以‘0’开头,这些头部的‘0’应该被忽略掉,除非这个整数就是由若干个‘0’组成的,这时这个整数就是0)。你的任务是:对这些分割得到的整数,依从小到大的顺序排序输出。输入:每组输入数据只有一行数字(数字之间没有空格),这行数字的长度不大于1000。输入数据保证:分割得到的非负整数不会大于...原创 2019-05-15 15:20:24 · 3318 阅读 · 0 评论 -
C语言编程100题-5.5
5.5编写程序,按下列规则倒序输出子字符串。先输出最后的一个字符,再输出最后两个字符串,再输出后面三个字符…, 最后输出整个字符串。输入的字符串长度不超过100。输入:一个字符串输出:空格隔开的子字符串,用一个空格间隔。输入输出样例如下所示:输入:Hello输出:o lo llo ello Hello样例输入:Hello样例输出:o lo llo ello Hello#inc...原创 2019-05-14 15:55:01 · 3263 阅读 · 1 评论 -
C语言编程100题-5.4
5.4输入一个字符串(其长度不超过81),分别统计其中26个英文字母出现的次数(不区分大、小写字母),并按字母出现次数从高到低排序,若次数相同,按字母顺序排列。字母输出格式举例,例如:A-3,表示字母A出现3次,C-0表示字母C没有出现。输入:第一行为输入,占一行,输入的字符串可能含有空格输出:第二行为输出,占一行。按照字母输出格式从高到低输出,各字母输出之间用一个空格字符分隔。样例:1...原创 2019-05-14 15:54:05 · 3894 阅读 · 0 评论 -
C语言编程100题-5.2
5.2编写折半查找函数,函数原型:int Binserach(int *a,int n,int key);功能:在n个元素的数组a中寻找key,若找到则返回key在数组中的下标,否则返回-1。已知有排好序的整数数组:int a[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};在main函数中,使用折半查找函数,输入一个整数,查找是否在数组中,如在给出下标,...原创 2019-05-14 15:53:01 · 3394 阅读 · 0 评论 -
C语言编程100题-5.1
5.1编写函数,函数原型如下:void fun(int n,char res[]);函数功能是将整数n的各位数字逆序排列,存放到res字符数组中。例如整数1035,逆序后为5301程序测试举例,如输入:9680200则输出:0020869#include<stdio.h>#include<math.h>void fun(int n, char res[...原创 2019-05-14 15:51:07 · 5975 阅读 · 0 评论 -
C语言编程100题-4.8
4.8编写函数,用牛顿迭代法求方程f(x)=2x3-4x2+3x-6=0在1.5附近的根。牛顿迭代公式为:xn+1=xn-f(xn)/f’(xn)其中,f’(xn) 是f在xn处的导数。结束条件:|f(xn+1)|< eps与|xn+1-xn|< eps同时成立(eps是一个很小的正数,从键盘输入)同时编写主函数,在主函数中调用并输出函数值。函数原型如下:double r...原创 2019-05-14 15:49:15 · 3395 阅读 · 0 评论 -
C语言编程100题-4.6
4.6从键盘输入奇数个整型数(大于3),对该整数序列按如下规则排序:最大值排在中间,最小值排在最左,中值排在最右,其它值清为0。输以空格隔开定义排序函数原型为:void booble(int *array,int n);运行样例如下所示:输入51 2 3 4 5输出1 0 5 0 3#include<stdio.h>#include<string.h>...原创 2019-05-14 15:48:11 · 3571 阅读 · 0 评论 -
C语言编程100题-4.4
4.4编写函数,将一个二进制数(以字符串形式表示)转换为十进制数。函数原型如下:double binTodec(char *str);其中str为接收的二进制数,函数的返回值为对应的十进制数。如输入:1010则输出为:10又如输入:100则输出为:4#include<stdio.h>#include<string.h>double binTode...原创 2019-05-14 15:46:49 · 3955 阅读 · 0 评论 -
C语言编程100题-4.3
4.3编写函数,寻找具有n个元素的一维数组中的最大值和最小值,并返回数组元素的平均值,函数原形如下:double fun(int a[],int n,int *max,int *min);如输入:52 4 5 3 1则输出为:51#include<stdio.h> double fun(int a[], int n, int *max, int *min){ i...原创 2019-05-14 15:44:50 · 4055 阅读 · 0 评论 -
C语言编程100题-4.2
4.2叛逆期的小明什么都喜欢反着做,连看数字也是如此(负号除外),比如:小明会把1234它看成4321;把-1234看成-4321;把230看成032 (032=32);把-230看成-032(-032=-32)。现在,小明做了一些a+b和a-b的题目(a, b为整数且不含前导0),如果给你这些题目正确的答案,你能猜出小明会做得到什么答案吗?输入:两个整数x,y(-1000000 <...原创 2019-05-14 15:41:58 · 3937 阅读 · 0 评论 -
C语言编程100题-6.4
6.4某部队进行新兵队列训练,将新兵从1开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始1至2报数,凡报到2的出列,剩下的向小序号方向靠拢,再从头开始进行1至3报数,凡报到3的出列,剩下的向小序号方向靠拢,继续从头开始进行1至2报数,以后从头开始轮流进行1至2报数、1至3报数直到剩下的人数不超过三人为止。编写程序,输入数N为最开始的新兵人数(20 < N < 6000),...原创 2019-05-14 15:36:46 · 2696 阅读 · 0 评论 -
C语言编程100题-5.3
5.3编写冒泡排序函数,函数原型:void bubblesort(int a[],int n);对n个整数升序排序。编写选择排序函数,函数原型:void selectsort(int a[],int n);对n个整数降序排序。编写main函数,输入10个整数,利用函数将其按升序和降序分别输出排序结果。(输入输出数据间用一个空格分隔)测试样例:如输入:5 2 8 9 10 1 3 4 7...原创 2019-05-05 01:13:47 · 3908 阅读 · 0 评论 -
C语言编程100题-8.6
8.6有一分数序列如下: 2/1, 3/2, 5/3, 8/5, 13/8, 21/13, … 即后一项的分母为前一项的分子,后项的分子为前一项分子与分母之和,求其前n项之和。 输入:整数,项数输出:实数,和样例:610.0071#include<stdio.h>int main(){ int m=1, n=2, i,a; float m1,n1,c=2;/...原创 2019-05-05 00:05:36 · 3517 阅读 · 1 评论 -
C语言编程100题-8.4
8.4输入待查找的字符串:I am a student输入所需查找的字符:m在字符串I am a student中找到字符m,如有多个m,查找第一个。其位置在4。测试样例如下:(输入时待查找的字符串与所需查找的字符用号隔开)输入:I am a studentm输出:4样例输入:fbhby Wml*W样例输出:7#include<stdio.h>#includ...原创 2019-05-05 00:05:46 · 2607 阅读 · 1 评论 -
C语言编程100题-8.3
8.3设计一个队列,将任意n个整数入队(n值从键盘读入,n>2),将队列的前两个元素输出(即出队),随后将11和12入队,再次输出队列中的所有元素。如入如下:3435687则输出为:4356871112样例输入:5 1 2 3 4 5样例输出:1 2 3 4 5 11 12#include<stdio.h>//这个题目好奇怪,在这里吐槽一下,这题...原创 2019-05-05 00:05:55 · 3370 阅读 · 0 评论 -
C语言编程100题-7.6
7.6在医院打点滴(吊针)的时候,如果滴起来有规律,先是滴一滴,停一下;然后滴二滴,停一下;再滴三滴,停一下…,现在有一个问题:这瓶盐水一共有v毫升,每一滴是d毫升,每一滴的速度是一秒(假设最后一滴不到d毫升,则花费的时间也算一秒),停一下的时间也是一秒,这瓶水什么时候能滴完呢?(0 < d < v <6000)样例(先输入d,然后v):0.5 1.76样例输入:0....原创 2019-05-05 00:06:05 · 5011 阅读 · 1 评论 -
C语言编程100题-6.5
6.5At the beginning of every day, the first person who signs in the computer room will unlock the door, and the last one who signs out will lock the door. Given the records of signing in’s and out’s,...原创 2019-05-04 23:49:33 · 3165 阅读 · 2 评论 -
C语言编程100题-6.2
6.2输入数组a( 长度为n, n<10),对元素按由小到大顺序排列,然后再输入一个数b插入数组a中,插入后,数组a中的元素仍然由小到大顺序排列。输入(第一行数组大小n,第二行为输入的数组,第三行为插入的整数):55 2 3 4 87输出:2 3 4 5 7 8样例输入:55 2 3 4 87样例输出:2 3 4 5 7 8#include<stdio.h&...原创 2019-05-04 23:47:59 · 3103 阅读 · 0 评论 -
C语言编程100题-6.1
6.1有一个包含奇数个项的整数序列,请编程按照以下规则排序:最大值排在中间,最小值排在最左,中值排在最右,其它值清为0。输入2行,第一行n表示要输入的数的个数,n是奇数。第二行输入的n个数。输出,排序后的数组,数据空格分隔,最后一个数据后面没有空格。样例:512 20 9 88 329 0 88 0 20样例输入:723 44 10 9 22 13 34样例输出:9 0 0 4...原创 2019-05-04 23:46:32 · 4078 阅读 · 0 评论 -
C语言编程100题-9.8
9.8编写进制转换函数,函数原型如下:void dtoboh(int n,int t,char res[]);功能是将十进制整数n(n>=0)转换为t进制数(即2、8及16进制),结果存放在res字符数组中。并编写测试用的主函数。如输入:248,2则输出:11111000如输入:248,8则输出:370如输入:248,16则输出:F8样例输入:2018,2...原创 2019-05-04 10:50:45 · 4511 阅读 · 0 评论 -
C语言编程100题-9.7
9.7Given a non-negative integer N, your task is to compute the sum of all the digits of N, and output every digit of the sum in English.Input Specification:Each input contains one test case. Each c...原创 2019-05-04 10:50:39 · 2418 阅读 · 0 评论