有3個整數 a,b,c,由鍵盤輸入,輸出其中最大的數
//有3個整數 a,b,c,由鍵盤輸入,輸出其中最大的數
#include <stdio.h>
int main(void)
{
int a, b, c;
scanf("a=%d b=%d c=%d", &a, &b, &c);
if (a > b)
{
int temp = a;
a = b;
b = temp;
}//a < b
if (a > c)
{
int temp = a;
a = c;
c = temp;
}//a < c
if (b > c)
{
int temp = b;
b = c;
c = temp;
}//b < c
printf("max = %d", c);
return 0;
}
在VS編譯器內會報C4996錯誤,解決見下文:(下同)
C4996 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. - EricsT - 部落格園 (cnblogs.com)
執行結果:
從鍵盤輸入一個小於1000的正數,要求輸出它的平方根(如平方根不是整數,則輸出其整數部分)要求在輸入資料後先對其進行檢查是否為小於1000的正數。若不是,則要求重新輸入。
//從鍵盤輸入一個小於1000的正數
// 要求輸出它的平方根(如平方根不是整數,則輸出其整數部分)要求在輸入資料後先對其進行檢查是否為小於1000的正數。
// 若不是,則要求重新輸入。
#include <stdio.h>
#include <math.h>
int main(void)
{
int a;
printf("請輸入小於1000的正數\n");
scanf("%d", &a);
while ((a >= 1000) || (a <= 0))
{
printf("請重新輸入\n");
scanf("%d", &a);
}
double sq = sqrt(a);
int iSq = (int)sq;
printf("%d", iSq);
return 0;
}
執行結果:
有一個函式,當 x < 1 時,y = x;當 x >= 1 且 x < 10 時,y = 2x - 1;當 x >= 10時,y = 3x - 11;寫程式,輸入 x 的值,輸出 y 相應的值
//有一個函式,當 x < 1 時,y = x;當 x >= 1 且 x < 10 時,y = 2x - 1;當 x >= 10時,y = 3x - 11;寫程式,輸入 x 的值,輸出 y 相應的值
#include <stdio.h>
int main(void)
{
double x;
scanf("%lf", &x);
double y;
if (x < 1)
y = x;
else if (x < 10)
y = 2 * x - 1;
else
y = 3 * x - 11;
printf("y=%lf\n", y);
return 0;
}
執行結果:
結果一: 結果二: 結果三:
給出一百分制的成績,要求輸出成績等級‘A’‘B’‘C’‘D’‘E’90以上為‘A’[80,89]為‘B’[70,79]為‘C’[60, 69]為‘D’60以下為‘E’
//給出一百分制的成績,要求輸出成績等級‘A’‘B’‘C’‘D’‘E’90以上為‘A’[80,89]為‘B’[70,79]為‘C’[60, 69]為‘D’60以下為‘E’
#include <stdio.h>
int main(void)
{
int a;
scanf("%d", &a);
if (a < 60)
{
printf("E");
return 0;
}
int i = a / 10;
switch (i)
{
case 6:
printf("D");
break;
case 7:
printf("C");
break;
case 8:
printf("B");
break;
case 9:
case 10:
printf("A");
break;
}
return 0;
}
執行結果:
結果一: 結果二: 結果三: 結果四: 結果五:
給出一個不多於5位的正整數,要求:
- 求出它是幾位數
- 分別輸出每一位數字
- 按逆序輸出各位數字
//求出它是幾位數
#include <stdio.h>
int main(void)
{
int a;
scanf("%d", &a);
int i = 0;
while (a > 0)
{
a = a / 10;
i++;
}
printf("是%d位數", i);
return 0;
}
執行結果:
//分別輸出每一位數字
#include <stdio.h>
int main(void)
{
int a;
scanf("%d", &a);
while (a > 0)
{
printf("%d\n", a % 10);
a = a / 10;
}
return 0;
}
執行結果:
//按逆序輸出各位數字
#include <stdio.h>
int main(void)
{
int a;
scanf("%d", &a);
while (a > 0)
{
printf("%d", a % 10);
a = a / 10;
}
return 0;
}
執行結果:
#include <stdio.h>
int main(void)
{
double I, p;
scanf("%lf", &I);
if (I <= 100000)
p = I * 0.01;
else if (I <= 200000)
p = 100000 * 0.01 + (I - 100000) * 0.075;
else if (I <= 400000)
p = 100000 * 0.01 + 100000 * 0.075 + (I - 200000) * 0.05;
else if (I < 600000)
p = 100000 * 0.01 + 100000 * 0.075 + 200000 * 0.05 + (I - 400000) * 0.03;
else if (I < 1000000)
p = 100000 * 0.01 + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + (I - 600000) * 0.015;
else
p = 100000 * 0.01 + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + 400000 * 0.015 + (I - 1000000) * 0.01;
printf("%lf", p);
return 0;
}
執行結果:
結果一: 結果二: 結果三: 結果四: 結果五: 結果六:
輸入4個整數,要求按由小到大的順序輸出
//輸入4個整數,要求按由小到大的順序輸出
#include <stdio.h>
void swap(int& a, int& b)
{
int temp = a;
a = b;
b = temp;
}
int main(void)
{
int a, b, c, d;
scanf("%d %d %d %d", &a, &b, &c, &d);
if (a > b)
swap(a, b);//a < b
if (a > c)
swap(a, c);//a < c
if (a > d)
swap(a, d);//a < d
//至此,a < ...
if (b > c)
swap(b, c);// b < c
if (b > d)
swap(b, d);//b < d
//至此,a < b < ...
if (c > d)
swap(c, d);//c < d
printf("%d %d %d %d", a, b, c, d);
return 0;
}
執行結果:
#include <stdio.h>
#include<math.h>
int main(void)
{
double x, y, d;
scanf("%lf %lf", &x, &y);
if (x < 0)
{
if (y < 0)//-2, -2
d = sqrt(pow(x - (-2), 2) + pow(y - (-2), 2));
else//-2, 2
d = sqrt(pow(x - (-2), 2) + pow(y - 2, 2));
}
else
{
if (y < 0)//2, -2
d = sqrt(pow(x - 2, 2) + pow(y - (-2), 2));
else//2, 2
d = sqrt(pow(x - 2, 2) + pow(y - 2, 2));
}
if (d <= 1)
printf("10");
else
printf("0");
return 0;
}
執行結果: