C++笔记

1.每个元素后都有空格,最后一位没有

1 for(int i = strings.size()-1;i >= 0 ;--i)
2 {
3     cout << strings[i] ;
4     if(i != 0)//i是数组的索引
5         cout << " ";
6 }    

2.输入一行元素,直到回车停止

1 char c = cin.get()
2 if(c == '\n')
3     break;

3.检查输入的数的位数

 

 1 void fun(int sum)
 2 {
 3     vector<int> sums;
 4     int a,b,c,d,e;
 5     if(sum/10000 >= 1)
 6     {//超过5位数 包括5位数
 7         e = sum/10000;
 8         d = (sum-e*10000)/1000;
 9         c = (sum-e*10000-d*1000)/100;
10         b = (sum-e*10000-d*1000-c*100)/10;
11         a = (sum-e*10000-d*1000-c*100 -b*10);
12         sums.push_back(e);
13         sums.push_back(d);
14         sums.push_back(c);
15         sums.push_back(b);
16         sums.push_back(a);
17     }else if(sum/1000 >= 1)
18     {//4位数
19         d = sum/1000;
20         c = (sum-d*1000)/100;
21         b = (sum-d*1000-c*100)/10;
22         a = (sum-d*1000-c*100 -b*10);
23         sums.push_back(d);
24         sums.push_back(c);
25         sums.push_back(b);
26         sums.push_back(a);
27     }else if(sum/100 >= 1)
28     {//3位数
29         c = sum/100;
30         b = (sum-c*100)/10;
31         a = (sum-c*100 -b*10);
32         sums.push_back(c);
33         sums.push_back(b);
34         sums.push_back(a);
35     }else if(sum/10 >= 1)
36     {//2位数
37         b = sum/10;
38         a = (sum-b*10);
39         sums.push_back(b);
40         sums.push_back(a);
41     }else
42     {//1位数
43         a = sum;
44         sums.push_back(a);
45     }
46 }

 

4.今天做题的时候又没看清题目,意外做出了一个奇怪的东西。。。输入M   N  输出M到N之间的质数 。每日一狗(1/1)

 

 1 #include <iostream>
 2 #include <cstring>
 3 
 4 #define MAXN 10000
 5 #define MAXL 100000
 6 
 7 using namespace std;
 8 
 9 int main()
10 {
11     int start,ends;
12     cin >> start >> ends;
13 
14     bool arr[MAXL];
15     memset(arr,1,sizeof(arr));
16 
17     int prime[MAXN];//存放素数表的数组
18     int counts = 0;//当counts+1等于ends时就退出程序
19     int index = 2;//第一个质数是2
20 
21     while(counts+1 != ends)
22     {
23         if(arr[index])
24         {
25             //当arr的值为1时 说明这个数还没有判断
26             for(int i = 2;i*index < MAXL;++i)
27             {
28                 arr[i*index] = 0;
29             }
30             prime[counts++] = index;
31             counts++;
32             cout << counts << " " << index << endl;
33         }
34         index++;
35     }
36 
37     for(int i = 0;i < counts; ++i)
38     {
39         cout << prime[i] << " ";
40     }
41     
42     return 0;
43 }

 5.今天出了点小问题

 

 

pow函数的原型:double pow(double x, int n) 

所以x要用10.0而不是10

 

posted on 2020-04-20 17:14  秃头女孩今夜也不睡觉  阅读(133)  评论(0编辑  收藏  举报

导航