编程打印用“偶数”构成的n行下三角三角形,行数n从键盘输入。
【输入形式】一个整数
【输出形式】参见样例
【样例输入】5
【样例输出】
2
4 6
8 10 12
14 16 18 20
22 24 26 28 30
从键盘输入两个正整数,输出这两个整数的商,要求商的小数点后保留30位整数。例如输入355和113,输出3.141592920353982300884955752212
【输入形式】两个整数,逗号作分隔符
【输出形式】参见样例
【样例输入】355,113
【样例输出】3.141592920353982300884955752212
谢谢您的提点!请问您能为我解释一下第二题为什么要这样编写吗?我不太理解为什么要这样编写
追答这和你笔算除法立竖式是一个道理,你对应着立竖式读一读代码就明白了
刚还想到一个效率更高的方法,可是因为修改次数太多,提交不了啦,这里顺便发出来,不过看来你更看不懂了
#include
#include
int main() {
long divisor;
long dividend; // 被除数
scanf("%ld %ld", $dividend, &divisor); // $换成&,我输入失败
if (divisor <= 0 || dividend < 0) {
printf("input error!");
return 1;
}
printf("%d", dividend/divisor);
dividend = dividend % divisor;
if (!dividend) return 0;
int digit = sizeof(long) - 1;
long factor = pow(10, digit);
char decimals[30 + digit + 1];
printf(".");
divisor *= factor;
for (int index = 0; dividend && index < 30; index+=digit) {
dividend *= factor;
sprintf(factor + index, "%d", dividend/divisor);
dividend %= divisor;
}
decimals[index] = decimals[30] = 0;
printf("%s", decimals);
return 0;
}
没编译,可能有错,但就是这个理儿
谢谢!
追答#include
int main()
{
int n=0;
int i,j;
int s=0,sum=0;
scanf("%d",&n);
for(i=1;i<=n;i++){
s++;
for(j=1;j<=s;j++){sum=sum+2;printf("%d ",sum);if(j==s)printf("\n");}
}
return 0;
}
第一题修改一下~!不好意思!
两道C语言编程题,大虾尽快帮帮忙
} 注意,你给的那个过程是错的5472576 => 5 +4 +7+2+5+7+6 =36 => 3+6 =9
两道C语言编程题:一、输入一个整数,求它的位数以及各位数字之和。
a\/=10;i++;\/\/i为位数 } printf("%d位数, 各位数字之和为%d\\n",i,sum);} 二:include <stdio.h> int issxh(int number){ int x1,x2,x3;x1=number\/100; \/\/百位数 x2=(number\/10)%10; \/\/十位数 x3=number%10; \/\/个位数 if(x1*x1*x1+x2*x2*x2+x3*x3*x3==number)retur...
C语言编程题,希望高手提点迷津,谢谢!
把int内所有素数打成表。 原理就是倍数排除。然后循环累加 bool is[N]; int prm[M]; \/\/don't break stack; define n\\m int getprm(int n)\/\/modle { int i, j, k = 0;int s, e = (int)(sqrt(0.0 + n) + 1);memset(is, 1, sizeof(is));prm[k++] = 2; is[0] =...
C语言编程,笨小猴那道,帮我看看,实在不知道出什么问题
num=maxn-minn; 应该加上类型声明 即 int num=maxn-minn; 才对 补充1: 前面的没说对, 是缺了个括号,然后 if(num%i==0) {y=0;break} break后面需要一个分号 你的程序格式有点乱 补充2:if(a[i]='\\n') break; 比较操作应该是“==”补充3:for(i=0;i<100;i++){scanf("%d...
C语言编程题,都是基础的,望达人解答。
main(){ int a,b;scanf("%d%d",&a,&b);printf("a+b=%d",a+b);} 2.main(){ int a,b;scanf("%d%d",&a,&b);if(a>b)printf("最小值是%d",b);if(a<b)printf("最小值是%d",a);if(a==b)printf("两个值相等");} 3.main(){ int a,b;scanf("%d%d",&a,&b);p...
C语言编程求助!!!求高手帮忙!感激不尽!
if (str[i]>='0' && str[i]<='9') \/*请修改此处:应该是同时满足这两个条件,如果是你写的条件的话,逻辑上刚好和这条语句相反,认真观察*\/ s=s*10+str[i] - '0'; \/*请修改此处:str[i]表示ascll值,若使用相应整数应减去‘0’*\/ printf("%d\\n",s);return 0;} 2.includ...
c语言编程题,做了一天了,有两题实在不会,老师只教了一点点,让我们自学...
六题,看函数名就知道了。写完才注意到你需要用C语言,但我写的是C++。我也懒得改了,你自己改一下吧,只要把输入输出语句换成C语言的格式就可以了。
c语言编程题求解,感谢!(再讲一下解题思路)
x,y为坐标,lt为每圈左上角的数字(起始),n为阶数。然后递归计算就是了。#include <stdio.h>int get(int x, int y, int lt, int n){ if(x == 0) return lt+y; else if(y == 0) return lt+4*(n-1)-x; else if(y == n-1) return lt+n+x-1; ...
一看到C语言就头疼,怎么才能学好啊
学编程就是在头疼和怀疑自己智商有问题的过程中成长的,学语法的时候加油把每个细节都学好。这还不是关键,学算法的时候才知道,语法其实挺简单的。总之一句话,看书比自己动手结合书更好。好多东西不上机你根本体会不到的。
C语言编程题,求解
include int Get3Num(int a[],int b[],int n){ int i;int sum=0;for(i=0;i<n;i++){ if(a[i]%3==0){ b[sum] = a[i];sum++;} } return sum;} int main(){ int num[20];int num_3[20];int i,j,sum;srand((unsigned int)time(NULL));for(i=0;i<20;i++)...