*****************0-0目录***********************
6-1 找两个数中最大者
1.题目
本题要求对两个整数a和b,输出其中较大的数。
函数接口定义:
int max( int a, int b );
其中
a
和b
是用户传入的参数,函数返回的是两者中较大的数。裁判测试程序样例:
#include <stdio.h> int max( int a, int b ); int main() { int a, b; scanf("%d %d", &a, &b); printf("max = %d\n", max(a, b)); return 0; } /* 你的代码将被嵌在这里 */
输入样例:
-5 8
输出样例:
max = 8
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
2.参考代码
/*@Date:2023/12/28 */ int max(int a,int b){ int max; max = (a>b?a:b); return max; }
6-2 字符串复制
1.题目
将一个字符串复制到另外一个字符串中。
函数接口定义:
void fun(char a[],char b[]);
参数
a
和b
是用户传入的参数。 函数将字符串a
复制到字符串b
中。裁判测试程序样例:
#include "stdio.h" void fun(char a[],char b[]); int main() {char a[80],b[80]; gets(a); fun(a,b); puts(b); return 0; } /* 请在这里填写答案 */
输入样例:
abc
输出样例:
abc
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
2.参考代码
/*@Date:2023/12/28 */ void fun(char a[],char b[]){ for(int i=0;*(a+i)!='\0';i++){ *(b+i) = *(a+i); } return a; }
7-1 sdut-C语言实验-虎子分糖果
1.题目
我们中国各个地区都有拜年的美好习俗,小朋友最喜欢走亲访友了,因为亲戚们会给准备很多糖果吃。虎子家也不例外,妈妈买了很多俄罗斯糖果准备给前来拜年的小朋友分。为了公平,给每个小朋友的糖果数一定得是一样的。
假设虎子妈妈准备了m块俄罗斯糖果,来了n位小朋友,请问每个小朋友可以分到多少块糖?还剩多少块?
输入格式:
输入n和m,其中n>0,m>0。
输出格式:
输出每个小朋友分到的糖果数和剩余的糖果数。
输入样例:
3 31
输出样例:
在这里给出相应的输出。例如:
10 1
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
2.参考代码
/*@Date:2023/12/28 */ #include<stdio.h> int main(){ int m,n; scanf("%d %d",&n,&m); int result = m/n; int surplus = m%n; printf("%d %d",result,surplus); return 0; }
7-2 sdut-C语言实验-虎子查找指定字符
1.题目
山东理工大学与爱尔兰利莫瑞克大学是中外合作院校,许多优秀的学长学姐通过自己努力获得了留学爱尔兰的机会。
虎子作为优秀的学长已经在爱村求学半年了,也认识了很多国外的同学,他们为了更加熟悉,会玩一个从从某个同学的名字中查找某指定的字符的游戏。
现在请你帮助虎子编写一个程序,从输入的英文名字中查找指定的字符。
输入格式:
输入的第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串(不超过30个字符)。
输出格式:
如果找到,在一行内按照格式“index = 下标”输出该字符在字符串中所对应的最小下标(下标从0开始);否则输出"Not Found"。
输入样例1:
M Maggie Ma
输出样例1:
在这里给出相应的输出。例如:
index = 0
输入样例2:
a Ken Thompson
输出样例2:
在这里给出相应的输出。例如:
Not Found
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
2.参考代码
/*@Date:2023/12/28 */ #include<stdio.h> #include<string.h> int main(){ int index = -1; char ch; char str[81]; ch = getchar(); //输入时要考虑含空格的字符串的情况,所以这里不能用scanf getchar(); gets(str); int length = strlen(str); for(int i=0;i<length;i++){ if(str[i]==ch){ index = i; break; //因为是找最小下标,所以这里要加break } } if(index == -1){ printf("Not Found"); } else{ printf("index = %d",index); } }
7-3 sdut-C语言实验-虎子算电费
1.题目
为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时;超过50千瓦时的,超出部分的用电量,电价上调0.05元/千瓦时。
虎子决定编写程序计算一算家里电费。你也会编写这个程序吧?
输入格式:
输入在一行中给出虎子家的月用电量(单位:千瓦时)。
输出格式:
在一行中输出虎子家应支付的电费(元),结果保留两位小数,格式如:“cost = 应付电费值”;若用电量小于0,则输出"Invalid Value!"。
输入样例1:
10
输出样例1:
cost = 5.30
输入样例2:
100
输出样例2:
cost = 55.50
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
2.参考代码
/*@Date:2023/12/28 */ #include<stdio.h> int main(){ int elec; scanf("%d",&elec); float result; if(elec<0){ printf("Invalid Value!"); return 0; } else if(elec<=50 && elec>0){ result = elec*0.53; } else if(elec>50){ result = (elec-50)*(0.53+0.05) + 26.5; } printf("cost = %.2f",result); }
7-4 sdut-C语言实验-虎子的虎年理财计划
1.题目
传说西塔发明了国际象棋而使国王十分高兴,他决定要重赏西塔,西塔说:“我不要你的重赏,陛下,只要你在我的棋盘上赏一些麦子就行了。在棋盘的第1个格子里放1粒,在第2个格子里放2粒,在第3个格子里放4粒,在第4个格子里放8粒,依此类推,以后每一个格子里放的麦粒数都是前一个格子里放的麦粒数的2倍,直到放满第64个格子就行了”。国王觉得很容易就可以满足他的要求,于是就同意了。但很快国王就发现,即使将国库所有的粮食都给他,也不够百分之一。
虎子深受启发,他开始了自己伟大的理财梦想:如果按照上面的复利计算,从这个虎年开始,第一年存1元钱,第二年存2元钱,第三年存4元钱,以此类推。你帮他算算,如果存n年(1<=n<=18),到下一个虎年虎子会存多少钱?
输入格式:
输入一个n,表示存n年。
输出格式:
输出虎子n年后的存款数额。
输入样例:
12
输出样例:
在这里给出相应的输出。例如:
4095
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
2.参考代码
/*@Date:2023/12/28 */ #include<stdio.h> int main(){ int n; scanf("%d",&n); int sum = 0; int temp = 1; for(int i=0;i<n;i++){ sum+=temp; temp*=2; } printf("%d",sum); }
7-5 sdut-C语言实验-虎子助人为乐之判断上三角矩阵
1.题目
放寒假时要好的高中同学免不了要聚一聚,聊聊各自的大学生活和理想,相同专业的同学也会交流一个各自大学的学习情况。
这不,虎子一放假就和同学牛牛交流起程序设计课程来。牛牛对于如何编程判断上三角矩阵一直设计不出完善的程序,这对虎子来说可是信手拈来,我们可都是至少150题的练习量的。让我们一起来试试吧?
要求编写程序,判断一个给定的方阵是否上三角矩阵。
温馨提示:上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。
输入格式:
输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。
输出格式:
每个矩阵的判断结果占一行。如果输入的矩阵是上三角矩阵,输出“YES”,否则输出“NO”。
输入样例:
在这里给出一组输入。例如:
3 3 1 2 3 0 4 5 0 0 6 2 1 0 -8 2 3 1 2 3 1 4 5 0 -1 6
输出样例:
在这里给出相应的输出。例如:
YES NO NO
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
2.参考代码
/*@Date:2023/12/28 */ #include<stdio.h> int main(){ int T; scanf("%d",&T); while(T--){ int n; scanf("%d",&n); int arr[100][100]; for(int i=0;i<n;i++){ for(int k=0;k<n;k++){ scanf("%d",&arr[i][k]); } } int flag=1; for(int i=1;i<n;i++){ //这里需要列一遍数据来找规律 for(int k=0;k<i;k++){ if(arr[i][k]!=0){ flag=0; } } } if(flag==1){ printf("YES\n"); } else if(flag==0){ printf("NO\n"); } } return 0; }
7-6 sdut-C语言实验- 虎子认识新朋友之字符串排序
1.题目
虎子寒假加入了一个实验室,认识了3个新同学,他决定将同学的名字按字母顺序存储到自己的电子通讯录上。
你知道如何编程实现吗?
请编程实现:输入3个字符串,按字典序从小到大进行排序。
输入格式:
输入数据有一行,分别为3个字符串,用空格分隔,每个字符串长度不超过100。
输出格式:
输出排序后的三个字符串,用空格分隔。
输入样例:
abcd cdef bcde
输出样例:
abcd bcde cdef
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
2.参考代码
/*@Date:2023/12/28 */ #include<stdio.h> #include<string.h> int main(){ char str[3][1000]; for(int i=0;i<3;i++){ scanf("%s",&str[i]); //题目:“以空格分隔”,所以可以用scanf } for(int i=0;i<3-1;i++){ //冒泡排序 for(int k=0;k<3-1-i;k++){ if(strcmp(str[k],str[k+1])>0){ char temp_s[1000] = "\0"; strcpy(temp_s,str[k+1]); strcpy(str[k+1],str[k]); strcpy(str[k],temp_s); } } } for(int i=0;i<3;i++){ if(i!=2){ printf("%s ",str[i]); } else{ printf("%s",str[i]); } } return 0; }