#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main() {
int n;
n = a;
while (n >= a && n <= b)
sth;
}
return 0;
}
第一,你定义n=a,这个非常正确(肯定有a<b),同时你后面的判断语句可以简化成n<=b,这看起来就更加简洁了
返回两个数中最大值的函数,我定义为max函数,你写的代码看着简单吗?
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int max(int x,int y) {
int z = x > y ? x : y;
return 0;
}
嘿,伙计。这上面的应该比你想的更简单!
这利用了三元运算符(强调先是问号?然后是冒号:),它不需要用到逗号和分号
这里再提个醒,今天上午的练习记错了的地方
第一个,fgets是stdio.h里的函数,不需要额外加头文件
第二个,fgets第二个位置你可以考虑sizeof函数
第三个,fgets第三个位置是stdin而不是stdlib(这是一个头文件名称)
第四个,再怎么样他都是一个函数,fgets每个位置之间都是用逗号而不是分号(不是for循环这种特例!!!再说,for不是函数,而是一个控制结构,也即控制语句)
判断是不是回文数,你也真是逆天啊
你居然想利用字符串来一个一个对比,先不说麻不麻烦,这要耗费多少时间啊!
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int hui(int x) {
int r = 0;//必须得初始化为0,因为下面用的时候得从0开始
//r,即reversed,意思是“使反转”
int or = x;//o,即original,意思是“起初的”
//作用是复制变量x参与运算,不让x的值发生改变
int remainder;//意思是“余数”
while (or != 0) {
remainder = or % 10;
r = r * 10 + remainder;//这是核心
or /= 10;
}
if (r == x) {
return 1;
}
else {
return 0;
}//“添加标志”
}
从始至终,我们定义了三个变量
最值得学习的是or!=0,你应该值得的是,如果是一个较大的数对一个较小取模,那它的值就是较小的那个数,所以你完全不用担心最后的一个数(原先的最高位数)都成了0
Comments NOTHING