1.1输入输出习题错误
------------恢复内容开始------------
1.cin写成下面这个样子
#include <iostream> using namespace std; int main(){ int A,B,C,D; cin >> A >> B >> C >> D >>; cout << (A*B)-(C*D) <<endl; system("pause"); return 0; }
cin 的D后面没有尖括号,直接打分号
2.读取四行输入的值不用四行cin,cin一行读4个也行,还有直接scanf("%d%d%d%d",a,b,c,d);,scanf会过滤掉空格和回车
3.调用<iostream>头文件,编译时间会变慢,用万能头文件更慢
4.string只能用cin读
5.输出菱形,用曼哈顿距离
#include <cstdio> #include <cmath> using namespace std; int main(){ int n; scanf("%d",&n); int cx = n/2; int cy = n/2; for(int x = 0;x<n;x++){ for (int y = 0;y<n;y++){ int s = abs(cx-x)+abs(cy-y); if(s>n/2){ printf(" "); } else{ printf("*"); } } printf("\n"); } return 0; }
用找规律的笨办法还是麻烦很多
#include <cstdio> using namespace std; int main(){ int n; scanf("%d",n); for(int i = 1;i<n;i+=2){ for(int j = 0;j<(n-i)/2;j++) printf(" "); for(int j = 0;j<i;j++) printf("*"); for(int j = 0;j<(n-i)/2;j++) printf(" "); printf("\n"); } for (int j = 0 ;j<n;j++) printf("*"); printf("\n"); for(int i = n-2;i>0;i-=2){ for(int j = 0;j<(n-i)/2;j++) printf(" "); for(int j = 0;j<i;j++) printf("*"); for(int j = 0;j<(n-i)/2;j++) printf(" "); printf("\n"); } }