根据用户的要求,输出对应的行数和列数并打印*
#include
using namespace std;
/*
根据用户的要求,输出对应的行数和*数量
*/
int main(void) {
int row;
int col;
cout << "请输入行数:" << endl;
cin >> row;
cout << "请输入列数:" << endl;
cin >> col;
for (int i = 0; i < row; i++){
for (int j = 0; j < col; j++)
{
cout << "*" ;
}
cout<
根据用户输入的行数,输出一个正直角三角
#include
using namespace std;
int main(void) {
int row;
cout << "请输入行数:" << endl;
cin >> row;
for (int i = 1; i <= row; i++){
for (int j = 0; j < i ; j++)
{
cout << "*" ;
}
cout<
根据用户输入的行数,输出一个倒直角三角
#include
using namespace std;
int main(void) {
int row;
cout << "请输入行数:" << endl;
cin >> row;
for (int i = 1; i <= row; i++){
for (int j = row; j >= i ; j--)
{
cout << "*" ;
}
cout<
根据用户输入的行数,输出对应的正金字塔
#include
using namespace std;
int main(void) {
int row;
cout << "请输入行数:" ;
cin >> row;
for (int i = 1; i <= row; i++){
for (int j = 1; j <=(row - i) ; j++)
{
cout << " " ;
}
for (int j = 0; j < 2 * i-1; j++) {
cout << "*";
}
cout<< endl;
}
return 0;
}
打印九九乘法表
#include
#include
using namespace std;
int main(void) {
int width=0;
for (int i = 1; i <= 9; i++){
for (int j = 1; j <= i; j++)
{
width = (j == 1) ? 1 : 2;
//setw函数设置后面表达式占多少位,并设置占位左对齐
//头文件位:
cout << j << "x" << i << "=" <
输出100-999所有水仙花数
#include
using namespace std;
int main(void) {
//水仙花数:每一位的立方相加等于这个数本身
int a, b, c;
//用for可以用while也可以
for (int i = 100; i < 1000; i++) {
a = i % 10;//计算个位数
b = i / 10 % 10;//计算十位数
c = i / 100;//计算百位数
if (a * a * a + b * b * b + c * c * c == i) {
cout << i << " ";
}
}
return 0;
}
输出指定项的斐波拉契数列
#include
using namespace std;
int main(void) {
//1 1 2 3 5 8 ..
int n;
int a = 1;
int b = 1;
int sum = 0;
cout << "请输入项数指定:";
cin >> n;
//当输入的项数小于2的时候,输出的是前两个数字是没有变化的
if (n == 0) {
cout << "您输入的数字不合法,请重新输入...";
}
if (n == 1) {
cout << "1";
}
if (n == 2) {
cout << "1 1";
}
cout << "1 1"<<" ";
for (int i = 3; i <= n; i++) {
sum = a + b;
a = b;
b = sum;
cout << sum<<" ";
}
return 0;
}
输入一个十进制整数将其转换为对应的二进制
#include
using namespace std;
int main(void) {
//输入一个十进制,输出对应的二进制
int num;
char word[64];
int i = 0;
cout << "请输入一个十进制整数:" << endl;
cin >> num;
while (num)
{
word[i++] = num % 2 + '0';
num = num / 2;
}
for (int j = i - 1; j >= 0; j--) {
cout << word[j];
}
return 0;
}
输入一个二进制正数,将其转换为对应的十进制
#include
#include
using namespace std;
int main(void) {
//输入一个二进制正数,将其转换为对应的十进制
string num;
int sum = 0;
int n = 1;
cout << "请输入一串二进制正数:" << endl;
cin >> num;
for (int i = num.length()-1; i >= 0; i--)
{
num[i] = num[i] - '0';
sum = sum + num[i]*n;
n = n * 2;
}
cout << sum;
return 0;
}
输入一个字符串将他逆序输出
#include
#include
using namespace std;
int main(void) {
//输入一个字符串将他逆序输出
string str;
cout << "请输入一个字符串:" << endl;
cin >> str;
int j = str.length()-1;
for (int i = 0; i < j; i++)
{
int tmp = str[i];
str[i] = str[j];
str[j] = tmp;
j--;
}
cout << str << endl;
return 0;
}
经典算法题: 千鸡百钱. 1000 块钱, 要买 100 只鸡. 公鸡每只 50 块 母鸡每只 30 块 小鸡每 3 只 10 块 问:一共有多少种买法
#include
#include
using namespace std;
/*
经典算法题: 千鸡百钱.
1000 块钱, 要买 100 只鸡.
公鸡每只 50 块
母鸡每只 30 块
小鸡每 3 只 10 块
*/
int main(void) {
int count = 0;
for (int i = 1; i <= 20; i++){
for (int j = 1; j <= 33; j++)
{
int k = 100 - i - j;
if (k % 3 == 0 && (i * 50) + (j * 30) + (k / 3 * 10) == 1000) {
cout << "公鸡有" << i << "母鸡有" << j << "小鸡" << k << endl;
count++;
}
}
}
cout << "一共有" << count << "种" << endl;
return 0;
}
输入一个英文字符串(一句话),统计输入的单词个数.
#include
#include
using namespace std;
int main(void) {
//输入一个英文字符串(一句话),统计输入的单词个数.
int i=0;//记录读取字符的实时位置
int count = 0;
char line[128];//string line;//配合getline使用
cout << "请输入一个英文字符串:" ;
gets_s(line, sizeof(line));//也可以使用getline,但是不能用cin,cin会以空格作为结束,中断输入
while (line[i] == ' ') i++;
while (line[i]) { // while(line[i] != '\0') '\0' 就是 0
// 跳过连续的多个非空格组合(就是单词!)
while (line[i] && line[i] != ' ') i++;
while (line[i] == ' ') i++;
count++;
}
cout << "有" << count <<"个单词" << endl;
return 0;
}
输入一句话,然后把这个字符串以单词为单位,逆转输出。
#include
#include
using namespace std;
int main(void) {
//输入一句话,然后把这个字符串以单词为单位,逆转输出。
int i=0;//记录读取字符的实时位置
int j;//用来记录遇到单词时的初始位置
int count = 0;
char line[128];//string line;//配合getline使用
cout << "请输入一个英文字符串:" ;
gets_s(line, sizeof(line));//可以使用getline(cin,line);
while (line[i]){
while (line[i] == ' ')i++;
j = i;
while (line[j] && line[j] != ' ')j++;
for (int k = i,m = j-1; k < m; k++,m--){
int tmp = line[k];
line[k] = line[m];
line[m] = tmp;
}
i = j;
}
int m = i - 1;
for (int k = 0; k < m; k++,m--){
int tmp = line[k];
line[k] = line[m];
line[m] = tmp;
}
cout << line << endl;
return 0;
}