#include <stdio.h>
#include <stdbool.h>
#include <math.h>
#include <string.h>
//单次加法运算
static double Add(double a, double b)
{
double result;
result = a + b;
return result;
}
//整数转换字符
static int AscTurnChar(int asc)
{
char result;
result = asc;
return result;
}
//字符转换整数
static char CharTurnAsc(char cha)
{
int result;
result = cha;
return cha;
}
//字符串大小写
static void StrTurn(char str[])
{
int i = 0;
while (str[i] != '\0')
{
if (str[i] >= 'A' && str[i] <= 'Z')
{
str[i] = str[i] + 32;
}
else if (str[i] >= 'a' && str[i] <= 'z')
{
str[i] = str[i] - 32;
}
i++;
}
}
int main()
{
//单次加法运算
//double x, y;
//scanf_s("%lf%lf", &x, &y);
//double add = Add(x, y);
//printf("%lf", add);
//return 0;
//整数转换字符
//int asc;
//scanf_s("%d", &asc);
//char asc_turn_cha = AscTurnChar(asc);
//printf("%c", asc_turn_cha);
//return 0;
//字符转换整数
//char cha;
//scanf_s("%c", &cha, 1);
//int char_turn_asc = cha;
//printf("%d", cha);
//return 0;
//字符串大小写?
//char c;/*int c?*/
//while((c = getchar()) != EOF)
//{
// if (c >= 'a' && c <= 'z')
// {
// printf("%c", c - 32);
// }
// else printf("%c", c);
//字符串大小写(无空格)
//char input[100];
//scanf_s("%s", &input, 100);
//StrTurn(input);
//printf("%s", input);
//return 0;
//字符串大小写(有空格/无换行)
//char input[101];
//fgets(input, sizeof(input), stdin);
//StrTurn(input);
//printf("%s", input);
//return 0;
//字符串大小写(某条件)
//char ch;
//scanf_s("%c", &ch, 1);
//while (ch != '#')
//{
// printf("%c", ch - 32);
// scanf_s("%c", &ch, 1);
//}
//return 0;
//输出字符对应(自动的)
//int i = 1;
//while (i <= 128)
//{
// printf("%d:%c\n", i, i);
// i++;
//}
//return 0;
//输出字符对应(被动的)
//char x;
//while (scanf_s("%c", &x, 1) != EOF)
//{
// if (x != '\n')
// {
// printf("%c:%d\n", x, x);
// }
// else
// printf("结束");
//}
//return 0;
//强制类型转换(仅附注)
//int a,b;
//float c=(float)a/b;
//float d=a*0.1/b;
//错误输入抵抗?
//int a, b;
//while (scanf_s("%d%d", &a, &b) != EOF)
//{
// printf("%d\n", a + b);
// while (getchar() != '\n');
//}
//数组定义调用
//实现1:定义设定长度并输出赋值后的数组
//int num, Num;
//int arr[100];
//int i = 0, j = 0;
//scanf_s("%d", &num);
//for (i = 0; i < num; i++)
//{
// scanf_s("%d", &Num);
// arr[i] = Num;
//}
//for (j = 0; j < num; j++)
//{
// printf("%d ", arr[j]);
//}
//实现2:定义未定长度并输出赋值后的数组
//int Num;
//int arr[100];
//int i = 0, j = 0;
//for (i = 0; i < 100; i++)
//{
// scanf_s("%d", &Num);
// if (Num == -1)
// {
// break;
// }
// arr[i] = Num;
//}
//for (j = 0; j < i; j++)
//{
// printf("%d ", arr[j]);
//}
//数位拆解输出
//实现1:数位逆向输出:@123 #3 2 1
//int num, digit1, digit2;
//scanf_s("%d", &num); //@123
//while (1)
//{
// digit1 = num % 10;//@123 #3 @12 #2
// digit2 = num / 10;//@123 #12 @12 #1
// printf("%d ", digit1);
// num = digit2;
// if (num < 10)
// {
// if (num == 0);
// {
// printf("%d ", digit2);
// break;
// }
// printf("%d ", num);
// break;
// }
//}
//实现2:数位正向输出:@123 #1 2 3
//int num, digit1, digit2;
//int arr[1000];
//int i = 0, j = 0;
//scanf_s("%d", &num);
//if (num < 10)
//{
// printf("%d ", num);
//}
//if (num >= 10)
//{
// for (i = 0; i < 100; i++)
// {
// digit1 = num % 10; //@123 #3 @12 #2
// digit2 = num / 10; //@123 #12 @12 #1
// arr[i] = digit1; //arr[0]=3 arr[1]=2
// num = digit2; //num=12 num=1
// if (num < 10)
// {
// arr[i + 1] = num;//arr[2]=1
// break; //i=1
// }
// }
// for (j = 0; j < i + 2; j++)
// {
// printf("%d ", arr[i + 1 - j]);
// } //#arr[2] #arr[1] #arr[0]
//}
//各个规制输出
//int num=123;
//float flo = 123.456;
//printf("%5d\n", num);
//printf("%-5d\n", num);
//printf("%05d\n", num);
//printf("%.5f\n", flo);
//printf("%10.f\n", flo);
//printf("%10.5f\n", flo);
//两种进制转换
double D10;
scanf_s("%llf", &D10);
double d10 = log2(D10);
double d10ceil = ceil(d10);
for (int i = 0; i < d10ceil; i++)
{
printf("%d ", i);
}
return 0;
}断点报错
最新发布