1、c++ 位数不够前面补零:
1 printf("04d", i);
位数不够前面补空格(右对齐):
1 printf("4d", i);
位数不够后面补空格(左对齐):
printf("-4d", i);
code:
1 #include <iostream> 2 #include <string> 3 #include <math.h> 4 using namespace std; 5 bool isSushu(int i) 6 { 7 if (i < 2) return false; 8 int t = sqrt(i); 9 for (int j = 2; j <= t; j++) 10 { 11 if (i % j == 0) return false; 12 } 13 return true; 14 } 15 int main() 16 { 17 int n; 18 cin >> n; 19 int arr[10000] = {}; 20 string award[5] = { "Are you kidding?", "Mystery Award", "Minion", "Chocolate", "Checked" }; 21 for (int i = 0; i < n; i++) 22 { 23 int id; 24 cin >> id; 25 if (i == 0) arr[id] = 1; 26 else if (isSushu(i + 1)) arr[id] = 2; 27 else arr[id] = 3; 28 } 29 int k; 30 cin >> k; 31 for (int i = 0; i < k; i++) 32 { 33 int id; 34 cin >> id; 35 printf("%04d: %s ", id, award[arr[id]].c_str()); 36 if (arr[id] > 0) arr[id] = 4; 37 } 38 return 0; 39 }